The problem was that the error handling was using a too-small buffer to
print the error message generated. We fix this by not using a buffer at
all, but by using fprintf() directly. There were also some problems with
the error handling in table dumping that was exposed by this fix that were
also corrected.
client/mysqldump.c:
Use fprintf() instead of my_printf_error() to avoid buffer overflow issues.
Since ME_BELL wasn't specified, calling my_printf_error() offered no advantage
except for adding my_progname, which we just go ahead and do manually. Also,
fix the error handling in dumpTable() when queries to get data fail and --force
was specified.
mysql-test/r/mysqldump.result:
Add new results
mysql-test/t/mysqldump.test:
Add new regression test
Old option ordering in the help was confusing to some users. Changed
ordering of deprecated options to be consistent, and added mention to
entry for options with a "--no-option" variant mentioning the
"--disable-option" variant.
client/mysql.cc:
Rearranged options for clarity. Deprecated "--no-X" options now
follow the "--X" option, and all of the "--X" options that have a
"--no-X" variant now mention the "--disable-X" variant.
do not look for client-specific commands while inside a multi-line comment.
we will allow multi-comments pretty much anywhere within SQL-statements,
but client-specific commands (help, use, print, ...) must be the first token
in the input.
client/mysql.cc:
Bug#20432: mysql client interprets commands in comments
mysql-test/r/mysql_client.result:
Bug#20432: mysql client interprets commands in comments
test client-side parsing of comments and client-specific commands
mysql-test/t/mysql_client.test:
Bug#20432: mysql client interprets commands in comments
test client-side parsing of comments and client-specific commands
client/mysql.cc:
Remove trailing spaces from help arguments in com_server_help.
Disregard trailing spaces from command in com_help.
mysql-test/r/mysql_client.result:
Test trailing spaces on the help command.
mysql-test/t/mysql_client.test:
Result trailing spaces on the help command.
VC++Files/client/mysql.dsp:
Fixed omission of mysys\my_conio.c.
VC++Files/client/mysql_ia64.dsp:
Fixed omission of mysys\my_conio.c.
client/mysqldump.c:
VS compiler does not accept variable declarations within blocks.
Such a behaviour complies with the Standard C.
client/mysqldump.c:
Fix for bug #18536: mysqldump does not maintain table orders as per --tables option
- use list to store table names instead of hash.
mysql-test/r/mysqldump.result:
Fix for bug #18536: mysqldump does not maintain table orders as per --tables option
- test result.
mysql-test/t/mysqldump.test:
Fix for bug #18536: mysqldump does not maintain table orders as per --tables option
- test case.
client/mysqlbinlog.cc:
Fix for bug #18351: mysqlbinlog does not set default charset?
- --set-charset option added to allow one deal with old binlog files.
It adds 'SET NAMES charset' to the output.
Lines with column names consisting of national letters
were wrongly formatted in "mysql --table" results:
mysql> SELECT 'xxx xxx xxx' as 'xxx xxx xxx';
+-------------------+
| xxx xxx xxx |
+-------------------+
| xxx xxx xxx |
+-------------------+
1 row in set (0.00 sec)
It happened because in UTF-8 (and other multibyte charsets)
the number of display cells is not always equal to the number
of bytes of the string.
Data lines (unlike column name lines) were formatted correctly,
because data lines were displayed taking in account number of
display cells. This patch takes in account number of cells when
displaying column names, the same way like displaying data lines does.
Note: The patch is going to be applied to 4.1.
Test case will be added after merge to 5.0,
into "mysql.test", which appeared in 5.0.
mysql.cc:
Adding column name allignment using numcells(),
the same to data alignment, which was implemented earlier.
client/mysql.cc:
Adding column name allignment, the same to
data alignment, which was implemented earlier.
Fix URLs.
README:
Fix URL.
mysqltest.result:
Update test result for real_sleep error message.
mysqltest.c:
Fix do_sleep() to print correct command name for real_sleep.
client/mysqltest.c:
Fix do_sleep() to print correct command name for real_sleep.
mysql-test/r/mysqltest.result:
Update test result for real_sleep error message.
mysql-test/README:
Fix URL.
mysql-test/mysql-test-run.sh:
Fix URLs.
This changeset is assumed to stay in 4.1.
client/mysql.cc:
BUG#16217 forced to introduce a separate mysql client command.
Feature is backported from 5.0, precisely
ChangeSet 1.2034 06/02/09 16:23:09 aelkin@mysql.com
(under second review at the moment)
mysql-test/r/mysqlbinlog.result:
changed in 5.0
mysql-test/t/mysqlbinlog.test:
backported from 5.0. The last part of the test to mimic bug#16217
sql/log_event.cc:
Inserting exclaiming comment command for mysql client made differently than in 5.0.
Parsing still is cheap enough not to think to modify server code instead.
- Change "mysql_create_db" to not call "send_ok" if in silent mode i.e. called from "load_master_data"
- Change mysqltest to detect when there aren't as many warnings available as was reported.
client/mysqltest.c:
Call "die" if warnings were reported but there weren't any warnings to retrieve
sql/sql_db.cc:
Don't call "send_ok" if in silent mode.
into a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-4.1
client/mysql.cc:
Auto merged
client/mysqladmin.cc:
Auto merged
client/mysqlbinlog.cc:
Auto merged
client/mysqlcheck.c:
Auto merged
client/mysqldump.c:
Auto merged
client/mysqlimport.c:
Auto merged
client/mysqlshow.c:
Auto merged
isam/isamchk.c:
Auto merged
myisam/myisamchk.c:
Auto merged
myisam/myisampack.c:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_parse.cc:
Merged from 4.0.
get real results after all checks.
(see bug #14254: func_crypt.test fails on FreeBSD with --ps-protocol).
client/mysqltest.c:
Check for NULLs only if we don't replace column results,
get real results after all checks.
Made change to mysqlimport to set character_set_database to binary to
make importing various charsets/columns work correctly.
client/mysqlimport.c:
BUG# 12123
Added 'set @@character_set_database=binary' to make loading of tables with
mixed charset types and non-latin characters load.
mysql-test/mysql-test-run.pl:
BUG #12123
Added $MYSQL_IMPORT in order to test mysqlimport bug.
mysql-test/mysql-test-run.sh:
BUG #12123
Added $MYSQL_IMPORT in order to test mysqlimport bug.
mysql-test/r/mysqldump.result:
BUG #12123
Added dumping and reloading (using mysql, mysqldump, and mysqlimport) to
show that this fix handles dumping and reloading of non-latin1 charsets
in table with different charset columns (mixing of charsets, also can be a
UTF table with latin1 tables). Note the select before and after dump and
restore - should be exact.
mysql-test/t/mysqldump.test:
BUG #12123
Added dumping and reloading (using mysql, mysqldump, and mysqlimport) to
show that this fix handles dumping and reloading of non-latin1 charsets
in table with different charset columns (mixing of charsets, also can be a
UTF table with latin1 tables). Note the select before and after dump and
restore - should be exact. (results of this)
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
my_regex.h:
Rename: regex/regex.h -> regex/my_regex.h
client/mysqltest.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
os2/MySQL-Source.icc:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/Makefile.am:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/debug.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/debug.ih:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/engine.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/engine.ih:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/main.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/main.ih:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/regcomp.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/regerror.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/regerror.ih:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/my_regex.h:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/regexec.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/regfree.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
regex/reginit.c:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
sql/item_cmpfunc.cc:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
sql/item_cmpfunc.h:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
sql/mysqld.cc:
Prefix regex functions/types with "my_" as our
library is not compatible with normal regex lib.
mysql.cc:
Fixed not to copy multibyte characters to the
target string if we are inside a comment.
client/mysql.cc:
Bug#13487 Japanese data inside a comment causes the syntax error
Fixed not to copy multibyte characters to the
target string if we are inside a comment.
,
client/mysql.cc:
Don't use c_ptr() for cgets() and ensure buffer is not overwritten
mysql-test/r/cast.result:
More test for CAST(0x.... as signed)
sql/opt_sum.cc:
Fix bugs found during review
- Changed code to be able to remove one if
- Ensure that count == 0 only if is_exact_count == TRUE
sql/sql_delete.cc:
Ensure 'allow_sum_func' is reset before call to setup_conds
sql/sql_lex.cc:
allow_sum_func doesn't have to be reset for each query
(It's to be reset in setup_fields() or before call to setup_conds()
sql/sql_load.cc:
Move set of auto_increment_field_not_null so that it's not set if field value is NULL
sql/sql_prepare.cc:
allow_sum_func doesn't have to be reset for each query
(It's to be reset in setup_fields() or before call to setup_conds()
sql/sql_update.cc:
Ensure 'allow_sum_func' is reset before call to setup_conds
Enable "make distcheck" to work
configure.in:
Enable "make distcheck" to work
Docs/Makefile.am:
Enable "make distcheck" to work
Makefile.am:
Enable "make distcheck" to work
client/Makefile.am:
Enable "make distcheck" to work
cmd-line-utils/libedit/Makefile.am:
Enable "make distcheck" to work
include/Makefile.am:
Enable "make distcheck" to work
libmysql/Makefile.am:
Enable "make distcheck" to work
libmysql_r/Makefile.am:
Enable "make distcheck" to work
libmysqld/Makefile.am:
Enable "make distcheck" to work
libmysqld/examples/Makefile.am:
Enable "make distcheck" to work
mysql-test/Makefile.am:
Enable "make distcheck" to work
ndb/docs/Makefile.am:
Enable "make distcheck" to work
netware/Makefile.am:
Enable "make distcheck" to work
pstack/Makefile.am:
Enable "make distcheck" to work
scripts/Makefile.am:
Enable "make distcheck" to work
sql-bench/Makefile.am:
Enable "make distcheck" to work
sql/Makefile.am:
Enable "make distcheck" to work
sql/share/Makefile.am:
Enable "make distcheck" to work
support-files/Makefile.am:
Enable "make distcheck" to work
Revert to shell test script for test targets
mysqltest.c:
Windows pclose() returns error code in low byte
mysql_config.sh:
Remove -Xa -xstrconst from --cflags for Sun C++
scripts/mysql_config.sh:
Remove -Xa -xstrconst from --cflags for Sun C++
client/mysqltest.c:
Windows pclose() returns error code in low byte
Makefile.am:
Revert to shell test script for test targets
- Enable testcases after help from Serg
client/mysqltest.c:
Dump output to stdout if no result file is specified
Don't print verbose_msg when command fails whith expected error
mysql-test/mysql-test-run.pl:
Don't add all args to the MYSQL_TEST environment variable.
mysql-test/r/mysqltest.result:
Add test for mysqltest -x
mysql-test/t/mysqltest.test:
Add test for mysqltest -x