- 20 Nov, 2007 4 commits
-
-
unknown authored
into endora.local:/Users/davi/mysql/mysql-5.1-runtime
-
unknown authored
mysql-test/t/sp_notembedded.test: Remove test case, it's not needed any more.
-
unknown authored
into endora.local:/Users/davi/mysql/mysql-5.1-runtime sql/sql_class.cc: Auto merged
-
unknown authored
The problem is that DROP TABLE and other DDL statements failed to automatically close handlers associated with tables that were marked for reopen (FLUSH TABLES). The current implementation fails to properly discard handlers of dropped tables (that were marked for reopen) because it searches on the open handler tables list and using the current alias of the table being dropped. The problem is that it must not use the open handler tables list to search because the table might have been closed (marked for reopen) by a flush tables command and also it must not use the current table alias at all since multiple different aliases may be associated with a single table. This is specially visible when a user has two open handlers (using alias) of a same table and a flush tables command is issued before the table is dropped (see test case). Scanning the handler table list is also useless for dropping handlers associated with temporary tables, because temporary tables are not kept in the THD::handler_tables list. The solution is to simple scan the handlers hash table searching for, and deleting all handlers with matching table names if the reopen flag is not passed to the flush function, indicating that the handlers should be deleted. All matching handlers are deleted even if the associated the table is not open. mysql-test/include/handler.inc: Add test case for Bug#31397 mysql-test/r/handler_innodb.result: Add test case result for Bug#31397 mysql-test/r/handler_myisam.result: Add test case result for Bug#31397 sql/mysql_priv.h: Rename flush functions to better match the intent of the caller and update functions prototypes and remove unused flags. sql/sql_base.cc: Rename flush functions to better match the intent of the caller. sql/sql_class.cc: Rename the flush functions to better match the intent of the caller. The hash_free function is moved to the cleanup. sql/sql_handler.cc: When dropping tables for a final close, scan the handler's hash table since the table might not be in the handlers open table list because the table was marked for reopen or because it's a temporary table. sql/sql_rename.cc: Drop handlers associated with tables that are being renamed. sql/sql_table.cc: Now that temporary tables are properly removed even when opened by a SQL HANDLER, enable the assert since this branch can't be taken outside of SF/trigger/prelocked mode.
-
- 15 Nov, 2007 2 commits
-
-
unknown authored
into lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge sql/events.cc: Auto merged
-
unknown authored
different error code depending on platform. On Mac OS X, KILL statement issued to kill the current connection would return a different error code and message than on other platforms ('MySQL server has gone away' instead of 'Shutdown in progress'). The reason for this difference was that on Mac OS X we have macro SIGNAL_WITH_VIO_CLOSE defined. This macro forces KILL implementation to close the communication socket of the thread that is being killed. SIGNAL_WITH_VIO_CLOSE macro is defined on platforms where just sending a signal is not a reliable mechanism to interrupt the thread from sleeping on a blocking system call. In a nutshell, closing the socket is a hack to work around an operating system bug and awake the blocked thread no matter what. However, if the thread that is being killed is the same thread that issued KILL statement, closing the socket leads to a prematurely lost connection. At the same time it is not necessary to close the socket in this case, since the thread in question is not inside a blocking system call. The fix, therefore, is to not close the socket if the thread that is being killed is the same that issued KILL statement, even with defined SIGNAL_WITH_VIO_CLOSE. mysql-test/r/kill.result: Update result file. mysql-test/t/kill.test: Added a test case for BUG#19723: kill of active connection yields different error code depending on platform. sql/sql_class.cc: Call close_active_vio() only if we're killing another thread.
-
- 14 Nov, 2007 3 commits
-
-
unknown authored
into damien-katzs-computer.local:/Users/dkatz/cmdline_events_bug
-
unknown authored
mysql-test/r/no-threads.result: Test that we are in the 'no-threads' thread_handling mode. mysql-test/t/no-threads.test: Test that we are in the 'no-threads' thread_handling mode. sql/mysqld.cc: Changes to make global_system_variables.thread_handling be zero based, instead of 1 based. sql/scheduler.h: Changed the enum to start at 0, to match the array elements in thread_handling_names in mysqld.cc
-
unknown authored
into damien-katzs-computer.local:/Users/dkatz/mysql-5.1-runtime
-
- 13 Nov, 2007 3 commits
-
-
unknown authored
Post pushbuild fix Disabled test on windows due to bug#30459 (DATA/INDEX DIR for partitions not working on windows) Patch from Mattias Jonsson. mysql-test/r/partition_mgm.result: Bug#32091: Security breach via directory changes fixed non-windows lines. mysql-test/t/partition_mgm.test: Bug#32091: Security breach via directory changes fixed non-windows lines. mysql-test/t/partition_symlink.test: Bug#32091: Security breach via directory changes Added no_windows, since it is affected of bug#30459
-
unknown authored
into stella.local:/home2/mydev/mysql-5.1-bug31210 libmysqld/lib_sql.cc: Auto merged
-
unknown authored
if running as root Every start of a server in the test suite raised that warning. The cause was an unconditionla add of the --user option to the server command line. Only the "root" user (effective user id == 0) must use that option. Added check for effective user id == 0 before adding --user. Thanks to Magnus Svensson for the patch. mysql-test/mysql-test-run.pl: Bug#32078 - Excessive warnings: One can only use the --user switch if running as root Added check for effective user id == 0 before adding --user in mysqld_arguments().
-
- 12 Nov, 2007 20 commits
-
-
unknown authored
into mattiasj-laptop.(none):/home/mattiasj/clones/mysql-5.1-last_with_main
-
unknown authored
into mattiasj-laptop.(none):/home/mattiasj/clones/mysql-5.1-last_with_main libmysqld/lib_sql.cc: Auto merged mysql-test/include/mix1.inc: Auto merged mysql-test/r/innodb_mysql.result: Auto merged sql/event_scheduler.cc: Auto merged sql/events.cc: Auto merged sql/ha_ndbcluster_binlog.cc: Auto merged sql/handler.cc: Auto merged sql/item_func.cc: Auto merged sql/slave.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_connect.cc: Auto merged sql/sql_insert.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_yacc.yy: Auto merged
-
unknown authored
into mysql.com:/home/svoj/devel/mysql/BUG32111/mysql-5.1-engines mysql-test/r/symlink.result: Auto merged mysql-test/t/symlink.test: Auto merged
-
unknown authored
into mysql.com:/home/svoj/devel/mysql/BUG32111/mysql-5.0-engines mysql-test/r/symlink.result: Auto merged mysql-test/t/symlink.test: Auto merged
-
unknown authored
Use proper variable for test. mysql-test/t/symlink.test: Use proper variable for test. mysql-test/r/symlink.result: Use proper variable for test.
-
unknown authored
into stella.local:/home2/mydev/mysql-5.1-bug31210
-
unknown authored
wait_condition timeout. The problem was that the event thread didn't manage to execute the event in 30 seconds on highly-loaded box. The fix is to increase timeout. This is a fix for the test suite. mysql-test/t/information_schema.test: Provide more time to execute an event.
-
unknown authored
into mattiasj-laptop.(none):/home/mattiasj/clones/mysql-5.1-lastfinaltopush
-
unknown authored
into mattiasj-laptop.(none):/home/mattiasj/clones/mysql-5.1-lastfinaltopush mysql-test/r/partition.result: Auto merged
-
unknown authored
into mattiasj-laptop.(none):/home/mattiasj/clones/mysql-5.1-lastfinaltopush
-
unknown authored
into mattiasj-laptop.(none):/home/mattiasj/clones/mysql-5.1-lastfinaltopush
-
unknown authored
Buffer overflow due to wrong key length in partitioning Changed to the correct key_length function. sql/opt_range.cc: Bug#31705 Partitions: crash if varchar length > 65530 Problem: buffer overflow due to wrong key-length Fix: Using correct key_length function mysql-test/r/partition_datatype.result: Bug#31705 Partitions: crash if varchar length > 65530 New test-result case for testing all column types used in key-partitioning. (For verifying correct key-length use) mysql-test/t/partition_datatype.test: Bug#31705 Partitions: crash if varchar length > 65530 New test case for testing all column types used in key-partitioning. (For verifying correct key-length used)
-
unknown authored
Merge fix partition_mgm did not require have_symlink. Moved the test case to partition_symlink, which require have_symlink, and should work on both *nix and Windows mysql-test/r/partition_mgm.result: Bug#32091: Security breach via directory changes Moved the test case to partition_symlink. mysql-test/t/partition_mgm.test: Bug#32091: Security breach via directory changes Moved the test case to partition_symlink. mysql-test/r/partition_symlink.result: Bug#32091: Security breach via directory changes Moved the test case to partition_symlink. It requires have_symlink. mysql-test/t/partition_symlink.test: Bug#32091: Security breach via directory changes Moved the test case to partition_symlink. It requires have_symlink.
-
unknown authored
partitioned table Post-pushbuild fix Pushbuild detected yet another need for lex initialization in embedded server. libmysqld/lib_sql.cc: Bug#31210 - INSERT DELAYED crashes server when used on partitioned table Initialized lex for later use in open_table().
-
unknown authored
in stored procedure. The problem was that MySQL used unnecessarily large amounts of memory if user variables were used as an argument to CONCAT or CONCAT_WS -- 16M per each user variable used. Technically, it happened because MySQL used the following allocation strategy for string functions to avoid multiple realloc() calls: in the virtual operation fix_length_and_dec() the attribute max_length was calculated as a sum of max_length values for each argument. Although this approach worked well for small (or fixed) data types, there could be a problem if there as a user variable among the arguments of a string function -- max_length of the function would be 16M (as the max_length of a user variable is 16M). Both CONCAT() and CONCAT_WS() functions suffer from this problem. The fix is to do not use meta-data for allocating memory. The following strategy is proposed instead: allocate the exact length of the result string at the first record, double the amount of memory allocated when it is required. No test case for this bug because there is no way to test memory consumption in a robust way with our test suite. sql/item_strfunc.cc: Implement memory-wise allocation strategy.
-
unknown authored
into mysql.com:/home/svoj/devel/mysql/BUG32111/mysql-5.1-engines mysql-test/r/symlink.result: Auto merged mysql-test/t/symlink.test: Auto merged mysys/my_symlink2.c: Auto merged
-
unknown authored
into mysql.com:/home/svoj/devel/mysql/BUG32111/mysql-5.0-engines mysql-test/r/symlink.result: Auto merged mysql-test/t/symlink.test: Auto merged mysys/my_symlink2.c: Auto merged
-
unknown authored
-
unknown authored
into mysql.com:/home/svoj/devel/mysql/BUG32111/mysql-4.1-engines mysys/my_symlink2.c: Auto merged mysql-test/r/symlink.result: SCCS merged mysql-test/t/symlink.test: SCCS merged
-
unknown authored
Adding missing drop of user created for test case. mysql-test/r/mysqlbinlog.result: Result file change. mysql-test/t/mysqlbinlog.test: Dropping user that was added earlier in the test.
-
- 11 Nov, 2007 2 commits
-
-
unknown authored
causes the Server to crash. Post-pushbuild fix Pushbuild genereted valgrind warnings. Changed function to safer variant. sql/sql_partition.cc: Bug#30695: An apostrophe ' in the comment of the ADD PARTITION causes the Server to crash. Fix for valgrind warning in pushbuild. String.c_prt fcn is not as safe as comment says. (gives valgrind errors in this case)
-
unknown authored
partitioned table Post-pushbuild fix Pushbuild detected a new need for lex initialization in embedded server. Fixed test for INSERT DELAYED in partitions_hash.test so that it works with embedded server. libmysqld/lib_sql.cc: Bug#31210 - INSERT DELAYED crashes server when used on partitioned table Initialized lex for later use in open_table(). mysql-test/r/partition_hash.result: Bug#31210 - INSERT DELAYED crashes server when used on partitioned table Fixed test result for embedded server. mysql-test/t/partition_hash.test: Bug#31210 - INSERT DELAYED crashes server when used on partitioned table Fixed test for embedded server.
-
- 10 Nov, 2007 5 commits
-
-
unknown authored
Changed test case from GRANT to CREATE USER mysql-test/r/partition_mgm.result: Bug#32091: Security breach via directory changes test result mysql-test/t/partition_mgm.test: Bug#32091: Security breach via directory changes Changed test case from GRANT to CREATE USER
-
unknown authored
small fix of test case (when running make test after merge, it did not substitute MYSQLTEST_VARDIR in the error) mysql-test/r/partition_mgm.result: Bug#32091: Security breach via directory changes small fix in test result mysql-test/t/partition_mgm.test: Bug#32091: Security breach via directory changes small fix in test case
-
unknown authored
partitioned table Post-merge fix A new need for lex initialization arose. sql/ha_ndbcluster.cc: Bug#31210 - INSERT DELAYED crashes server when used on partitioned table Initialized lex for later use in open_table().
-
unknown authored
Problem: there was no standard syntax error when creating partitions with syntax error in the partitioning clause. Solution: added "Syntax error: " to the error message mysql-test/r/partition.result: Bug#29368: Incorrect error for syntax error when createing partition test result update mysql-test/r/partition_error.result: Bug#29368: Incorrect error for syntax error when createing partition test result mysql-test/t/partition_error.test: Bug#29368: Incorrect error for syntax error when createing partition test case sql/share/errmsg.txt: Bug#29368: Incorrect error for syntax error when createing partition Modified error messages
-
unknown authored
into stella.local:/home2/mydev/mysql-5.1-bug31210 sql/sql_acl.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_connect.cc: Auto merged sql/sql_insert.cc: Auto merged sql/sql_lex.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_servers.cc: Auto merged sql/sql_udf.cc: Auto merged sql/table.cc: Auto merged
-
- 09 Nov, 2007 1 commit
-
-
unknown authored
Problem: the table's INDEX and DATA DIR was taken directly from the table's first partition. This allowed rename attack similar to bug#32111 when ALTER TABLE REMOVE PARTITIONING Solution: Silently ignore the INDEX/DATA DIR for the table. (Like some other storage engines do). Partitioned tables do not support DATA/INDEX DIR on the table level, only on its partitions. mysql-test/r/partition_mgm.result: Bug#32091: Security breach via directory changes test result mysql-test/t/partition_mgm.test: Bug#32091: Security breach via directory changes test case sql/ha_partition.cc: Bug#32091: Security breach via directory changes Do not use the first partition's DATA/INDEX DIR as the table's DATA/INDEX DIR. (A partitioned table do not have support for DATA/ INDEX DIR, only its partitions do)
-