- Add loop in mysqlslap that tries to connect up to 10 times if connect
in thread fails.
client/mysqlslap.c:
Add loop to retry connect 10 times with a small sleep in between.
mysql-test/t/disabled.def:
Remove disabling of testcase
- Allow "query" to be used as a prefix for focing a command to be sent to server
- Add testcases
client/mysqltest.c:
To force something being sent as a query to the mysqld one can
use the prefix "query". Remove "query" from string before executing.
mysql-test/r/mysqltest.result:
Add test case for "query" command
mysql-test/t/mysqltest.test:
Add test case for "query" command
Make mysqlcheck skip over views when processing all of the tables in a
database.
client/mysqlcheck.c:
Use SHOW TABLE STATUS to get table list, and skip over things that don't
have an engine (like a VIEW).
mysql-test/r/mysqlcheck.result:
Add new results
mysql-test/t/mysqlcheck.test:
Add new regression test
- Add call to 'safe_exit' function when db query fails.
client/mysqldump.c:
Add a call to 'safe_exit' to remember the error code and exit unless --force was give.n
mysql-test/r/mysqldump.result:
Add test result
mysql-test/t/mysqldump.test:
Add test case
when calling a SP from C API"
The bug was caused by lack of checks for misuse in mysql_real_query.
A stored procedure always returns at least one result, which is the
status of execution of the procedure itself.
This result, or so-called OK packet, is similar to a result
returned by INSERT/UPDATE/CREATE operations: it contains the overall
status of execution, the number of affected rows and the number of
warnings. The client test program attached to the bug did not read this
result and ivnoked the next query. In turn, libmysql had no check for
such scenario and mysql_real_query was simply trying to send that query
without reading the pending response, thus messing up the communication
protocol.
The fix is to return an error from mysql_real_query when it's called
prior to retrieval of all pending results.
client/mysqlbinlog.cc:
net_safe_read -> cli_safe_read
include/mysql.h:
Remove a private function from the public header.
include/mysql_com.h:
Remove a define that is never used.
include/sql_common.h:
Add a declaration for cli_safe_read - a function that reads one packet
from the server.
libmysql/libmysql.c:
net_safe_read -> cli_safe_read
Return CR_COMMANDS_OUT_OF_SYNC on attempt to execute a statement
using a connection which has pending result sets.
sql-common/client.c:
Actual fix for Bug#15752: if the server has pending result sets for
the client, return CR_COMMANDS_OUT_OF_SYNC on attempt to execute
another query. Similarly to the behaviour of mysql_use_result(),
multiple result sets block the connection and must be fetched
before it can be used for another query.
This uncovered an error in the protocol: the server doesn't drop
SERVER_MORE_RESULTS_EXISTS status flag upon an error, so in case of
a multi-query like SELECT 1; SELECT syntax_error; SELECT 2;
the client has no way to know that the server won't ever come to
execution of the third query and won't return any result sets for it.
For now, fix it in cli_safe_read, as a proper fix requires extension
of the client-server protocol.
sql/protocol.cc:
Remove a name that is never used.
sql/slave.cc:
net_safe_read -> cli_safe_read
tests/mysql_client_test.c:
Make 'query' a local variable to avoid name clash.
Add a test case for Bug#15752 "Lost connection to MySQL server when
calling an SP from C API"
- Add printout in write_footer to tell that mysqldump has completed.
Ex: -- Dump completed 2006-07-24 8:55:05
client/Makefile.am:
Build mysqldump with mf_getdate.c
client/mysqldump.c:
Add printout in write_footer that will print info that mysqldump has completed
When a wildcard database name is given the mysqlshow, but that wildcard
matches one database *exactly* (it contains the wildcard character), we
list the contents of that database instead of just listing the database
name as matching the wildcard. Probably the most common instance of users
encountering this behavior would be with "mysqlshow information_schema".
client/mysqlshow.c:
Add special handling for listing a single database that has a name that
looked like it contained wildcards. In this case, we just go ahead and list
the contents of the database, since there is a very high probability that is
what the user really wanted to do. (For example, 'mysqlshow INFORMATION_SCHEMA'
will show the I_S tables instead of just the I_S database.)
mysql-test/r/mysqlshow.result:
Add new results
mysql-test/t/mysqlshow.test:
Add new regression test
- Only handle return codes from 'pclose' greater than zero as errors.
- It appears pclose can return -1 with errno set to ECHILD although the executin
process completed successfully.
client/mysqltest.c:
Only handle return codes from 'pclose' greater than zero as errors.
on Windows.
Code added to look for different names on Windows
client/mysql_upgrade.c:
added conditionally-compiled part to look for different names of tools
on Windows
- "set @@character_set_database" should be ignored by servers prior to 4.1.1
client/mysqlimport.c:
Enclose "set @@character_set_databse=x" with comments that makes it be ignored by servers prior to 4.1.1
- Using CLIENT_MULTI_RESULTS is needed to execute stored procedures
client/mysqlslap.c:
Use CLIENT_MULTI_RESULTS as connect_flags for all connections to the MySQL server.
- Make mysql-test-run.pl restart a crashed/stopped process if it was expected it should crash.
- Added testcase for "crash_commit_before", which tests behaviour when server crashes just before commit.
* The testcase first write a small var/tmp/master0.expect file indicating expected crash
* Then sets "DEBUG" variable to for example "d,crash_commit_before" and then executes a commit.
* The server will crash and be brought back up by mysql-test-run.pl
* Test case will then wait for the process to come back online before continuing.
client/mysqltest.c:
Add "die" command used to abort a failing test case
Remove unused "exit" command
mysql-test/lib/mtr_process.pl:
When a process crash during execution of mysqltest, check if it was expected and restart the process in that case.
mysql-test/mysql-test-run.pl:
Remmeber options used when ndbd's and mysqld's was started, to be used by restart code
mysql-test/r/crash_commit_before.result:
New BitKeeper file ``mysql-test/r/crash_commit_before.result''
mysql-test/include/wait_until_connected_again.inc:
New BitKeeper file ``mysql-test/include/wait_until_connected_again.inc''
mysql-test/t/crash_commit_before.test:
New BitKeeper file ``mysql-test/t/crash_commit_before.test''
"I want to have the current delimiter in the prompt so that I can know at
a glance which is set."
Add a 'l' format specifier that represents the current statement delimiter.
client/mysql.cc:
Add a 'l' prompt format specifier, which becomes the current delimiter
string in the prompt.
and use it in mysql-test-run.pl
Use standard defines as last argument to 'fn_format'
mysql-test/r/not_ndb_default.require:
Rename: mysql-test/r/true.require -> mysql-test/r/not_ndb_default.require
client/mysqltest.c:
Use proper defines for last argument to fn_format(they are defined in my_sys.h)
Make abort_not_supported_test print info about in what file the test was
aborted and a reason for it. The reason is a best guess, using the filename of
the .require file to format it.
mysql-test/include/not_ndb_default.inc:
Use a more descriptive name of the .require file
mysql-test/include/not_windows.inc:
Use a more descriptive name of the .require file
mysql-test/include/windows.inc:
Use a more descriptive name of the .require file
mysql-test/lib/mtr_io.pl:
Add new function 'mtr_lastlinefromfile' that will return only the last line of a file.
mysql-test/mysql-test-run.pl:
Get reason why mysqltest decided to abort testcase from mysqltest.log
mysql-test/r/not_windows.require:
New BitKeeper file ``mysql-test/r/not_windows.require''
mysql-test/r/windows.require:
New BitKeeper file ``mysql-test/r/windows.require''
client/mysqldump.c:
When dumping more than one database, make sure that the proper database is selected before restoring that database's views.
Replaced hard-coded database name length with appropiate token.
mysql-test/r/mysqldump.result:
Added new result and corrected results for existing test cases.
mysql-test/t/mysqldump.test:
Added new case for dumping and restoring multiple databases each containing a view.
Small updates before patch submit.
client/mysqltest.c:
allow --valgrind option to mysqltest so one can be able to detect
whether the test is running under valgrind by having $VALGRIND_TEST,
similar to BIG_TEST, in the test file.
mysql-test/mysql-test-run.pl:
If the test suite is running under valgrind start mysqltest with --valgrind
to inform that we run valgrind. mysqltest will provide $VALGRIND_TEST for the
test cases.
mysql-test/r/events_bugs.result:
update result
mysql-test/r/events_scheduling.result:
update result
mysql-test/t/events.test:
Increase times or the test will fail under valgrind
mysql-test/t/events_bugs.test:
Increase times or the test will fail under valgrind
mysql-test/t/events_scheduling.test:
Remove faulty test
Disable the test case for valgrind
sql/event_data_objects.cc:
count the number of executions
sql/event_data_objects.h:
flags is not used at all
add execution_count to count the number of executions
sql/event_db_repository.cc:
Initialize wherever needed.
Add a comment regarding valgrind warning.
sql/event_queue.cc:
more debug info in the trace log
sql/event_scheduler.cc:
Use macro COND_STATE_WAIT() in all cases we need waiting
on condition. Hence, we can trace locking, attemption to lock
and more with SHOW SCHEDULER STATUS
sql/event_scheduler.h:
Change the declaration of cond_wait to accept THD
sql/events.cc:
fix memory leak. Destroy event_queue
mysql-test/include/not_valgrind.inc:
New BitKeeper file ``mysql-test/include/not_valgrind.inc''
mysql-test/r/not_valgrind.require:
New BitKeeper file ``mysql-test/r/not_valgrind.require''
into anubis.greendragongames.com:/home/greenman/workspace-mysql/mysql/merge-4.1_2_5.0
client/mysqldump.c:
Auto merged
mysql-test/r/mysqldump.result:
Auto merged
mysqldump did not select the correct database before trying to dump
views from it. this resulted in an empty result set, which in turn
startled mysql-dump into a core-dump. this only happened for views,
not for tables, and was only visible with multiple databases that
weren't by sheer luck in the order mysqldump required, anyway. this
fixes by selecting the correct database before dumping views; it also
catches the empty set-condition if it should occur for other reasons.
client/mysqldump.c:
Bug#21014: Segmentation fault of mysqldump on view
failsafe: if "select ... from information_schema.views" returns an
empty set, don't deref NULL; throw an error instead.
fix: select the correct database not only before dumping tables, but
before dumping views, as well.
mysql-test/r/mysqldump.result:
Bug#21014: Segmentation fault of mysqldump on view
show that mysqldump selects the correct database before trying to dump
views from it.
mysql-test/t/mysqldump.test:
Bug#21014: Segmentation fault of mysqldump on view
show that mysqldump selects the correct database before trying to dump
views from it.
client/mysql.cc:
Auto merged
client/sql_string.h:
Auto merged
configure.in:
Auto merged
myisam/mi_create.c:
Auto merged
mysql-test/r/date_formats.result:
Auto merged
mysql-test/t/date_formats.test:
Auto merged
ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
Auto merged
ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_string.h:
Auto merged
sql/table.cc:
Auto merged
mysqldump did not select the correct database before trying to dump
views from it. this resulted in an empty result set, which in turn
startled mysql-dump into a core-dump. this only happened for views,
not for tables, and was only visible with multiple databases that
weren't by sheer luck in the order mysqldump required, anyway. this
fixes by selecting the correct database before dumping views; it also
catches the empty set-condition if it should occur for other reasons.
client/mysqldump.c:
Bug#21014: Segmentation fault of mysqldump on view
failsafe: if "select ... from information_schema.views" returns an
empty set, don't deref NULL; throw an error instead.
fix: select the correct database not only before dumping tables, but
before dumping views, as well.
mysql-test/r/mysqldump.result:
Bug#21014: Segmentation fault of mysqldump on view
show that mysqldump selects the correct database before trying to dump
views from it.
mysql-test/t/mysqldump.test:
Bug#21014: Segmentation fault of mysqldump on view
show that mysqldump selects the correct database before trying to dump
views from it.
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
Using \U or \u in a prompt with the mysql command-line client could
crash when connecting to the instance manager, since it does not return
information about the user when asked by the client. This is fixed by
having the client use what it knowns about the user (or giving up and
saying "(unknown)").
client/mysql.cc:
init_username() may not retrieve a username (such as from the instance
manager), in which case we fall back to what was specified on the command
line (or .cnf file) or finally (unknown).
into zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.1-new-maint
BUILD/compile-dist:
Auto merged
BitKeeper/deleted/.del-partition_innodb.result:
Auto merged
BitKeeper/deleted/.del-partition_innodb.test:
Auto merged
client/mysqltest.c:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/create_not_windows.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/innodb_mysql.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/ps_1general.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/wait_timeout.test:
Auto merged
mysys/my_lib.c:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/unireg.cc:
Auto merged
mysql-test/extra/rpl_tests/rpl_log.test:
manuakl merge
mysql-test/lib/mtr_process.pl:
manuakl merge
mysql-test/mysql-test-run.pl:
manuakl merge
mysql-test/r/type_newdecimal.result:
manuakl merge
mysql-test/t/create.test:
manuakl merge
mysql-test/t/func_group.test:
manuakl merge
mysql-test/t/type_newdecimal.test:
manuakl merge
into zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.1
BitKeeper/etc/ignore:
auto-union
client/mysqldump.c:
Auto merged
mysql-test/r/bdb.result:
Auto merged
mysql-test/r/type_timestamp.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/t/bdb.test:
Auto merged
mysql-test/t/type_timestamp.test:
Auto merged
mysys/my_lib.c:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/table.cc:
Auto merged
mysql-test/r/func_time.result:
manual merge
mysql-test/r/mysqldump.result:
manual merge
mysql-test/t/func_time.test:
manual merge
mysql-test/t/mysqldump.test:
manual merge
sql/log.cc:
manual merge
sql/sp_head.cc:
manual merge
sql/sql_table.cc:
manual merge
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.
into mysql.com:/home/tnurnberg/mysql-5.0-maint-18462
mysql-test/r/mysqldump.result:
Auto merged
mysql-test/t/mysqldump.test:
Auto merged
client/mysqldump.c:
SCCS merged
Fixed wrong table flags type in ndbcluster that caused previous commit to fail
client/mysqltest.c:
Portability fix
mysys/my_bitmap.c:
Remove compiler warning
mysys/my_handler.c:
Remove compiler warning
mysys/thr_lock.c:
Remove compiler warning
plugin/fulltext/plugin_example.c:
Remove compiler warning
sql/ha_ndbcluster.h:
Fixed wrong of handler flags (caused previous commit to fail)
sql/ha_ndbcluster_binlog.cc:
Remove compiler warning
sql/handler.cc:
Indentation cleanups
sql/mysql_priv.h:
Changed log_output_options to ulong to remove compiler warning (and wrong test on 64 bit machines)
sql/mysqld.cc:
Changed log_output_options to ulong to remove compiler warning (and wrong test on 64 bit machines)
Split initialization of variables of different types to remove compiler warning
sql/set_var.cc:
Fixed indentation
sql/set_var.h:
sys_var_log_output now takes a pointer to ulong
storage/archive/archive_test.c:
Remove compiler warning
into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.1-merge
mysql-test/r/sql_mode.result:
Auto merged
mysql-test/t/sql_mode.test:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
client/mysqldump.c:
Manual merge
mysql-test/r/mysqldump.result:
Manual merge
mysql-test/t/mysqldump.test:
Manual merge
into zippy.(none):/home/cmiller/work/mysql/mysql-5.0-maint
client/mysqldump.c:
Auto merged
BitKeeper/etc/ignore:
Added BitKeeper/etc/RESYNC_TREE to the ignore list
mysql-test/r/mysqldump.result:
Manual merge.
mysql-test/t/mysqldump.test:
Manual merge.
into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge
client/mysqldump.c:
Auto merged
mysql-test/r/mysqldump.result:
Auto merged
mysql-test/t/mysqldump.test:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
into zim.(none):/home/brian/mysql/cleanup-5.1
BitKeeper/deleted/.del-partition_innodb.result:
Delete: mysql-test/r/partition_innodb.result
BitKeeper/deleted/.del-partition_innodb.test:
Delete: mysql-test/t/partition_innodb.test
include/config-win.h:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/t/create.test:
Auto merged
mysql-test/t/partition.test:
Auto merged