- 12 Feb, 2009 9 commits
-
-
Sergey Vojtovich authored
-
V Narayanan authored
A Query in the MyISAM merge table was crashing if the index merge algorithm was being used Index Merge optimization requires the reading of multiple indexes at the same time. Reading multiple indexes at once with current SE API means that we need to have handler instance for each to-be-read index. This is done by creating clones of the handlers instances. The clone internally does a open of the handler. The open for a MERGE engine is handled in the following phases 1) open parent table 2) generate list of underlying table 3) attach underlying tables But the current implementation does only the first phase (i.e.) open parent table. The current patch fixes this at the MERGE engine level, by handling the clone operation within the MERGE engine rather than in the storage engine API. It opens and attaches the MyISAM tables on the MyISAM storage engine interface directly within the MERGE engine. The new MyISAM table instances, as well as the MERGE clone itself, are not visible in the table cache. This is not a problem because all locking is handled by the original MERGE table from which this is cloned of. mysql-test/r/merge.result: updated the result file to reflect the new tests added to test the fix mysql-test/t/merge.test: Added new tests to verify that the index merge algorithm does not crash in the merge engine. storage/myisammrg/ha_myisammrg.cc: Implement the clone method, that handles 1) Cloning the handler 2) Opening underlying MYISAM child tables 3) Copies the state of the original handler and the children into the cloned instances 4) Sets the appropriate flags storage/myisammrg/ha_myisammrg.h: Added a flag that is set to indicate that the current instance is cloned. Also added the prototype or the clone method. storage/myisammrg/myrg_open.c: Since we do now again use myrg_open() in the server removed the comments marking this as deadcode.
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
-
Georgi Kodinov authored
-
Sergey Vojtovich authored
MATCH() function accepts column list as an argument. It was possible to override this requirement with aliased non-column select expression. Which results in server crash. With this fix aliased non-column select expressions are not accepted by MATCH() function, returning an error. mysql-test/r/fulltext.result: A test case for BUG#36737. mysql-test/t/fulltext.test: A test case for BUG#36737. sql/item_func.cc: Only accept fields as arguments to MATCH().
-
Georgi Kodinov authored
-
Chad MILLER authored
-
Chad MILLER authored
-
- 11 Feb, 2009 5 commits
-
-
Luis Soares authored
The test case relies on binlog entries for assertion. The problem is that the binlog does not get cleaned in pushbuild between tests, resulting in extra entries in the result file, causing the test to fail. This fix adds a reset master at the beginning of the test, so that we get a clean binlog file.
-
Horst Hunger authored
-
Luis Soares authored
-
Vladislav Vaintroub authored
-
Horst Hunger authored
Reviewed fix for bug#40882: Replaced "sleep 1" by wait_condition, added save/restore start values and closed open sessions. When trying to use "wait_for_query_to_succeed" a type has been fixed, also in "rename.test": Added session count and check and replaced error numbers.
-
- 10 Feb, 2009 14 commits
-
-
Mats Kindahl authored
-
Mats Kindahl authored
TRUNCATE TABLE fails to replicate when stmt-based binlogging is not supported. Correcting some tests that was failing in pushbuild as well as fixing result file for some tests that are not executed in the default MTR run. mysql-test/suite/binlog/t/binlog_truncate_innodb.test: Need to reset master to avoid the check to be for the wrong binlog file. mysql-test/suite/binlog/t/binlog_truncate_myisam.test: Need to reset master to avoid the check to be for the wrong binlog file.
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Mats Kindahl authored
-
Chad MILLER authored
-
Mats Kindahl authored
Post-merge fixes. Changes to some result sets. mysql-test/r/commit_1innodb.result: TRUNCATE TABLE does not cause the binary log to do commits any more. mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result: TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself. mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result: TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself. mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result: TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself. mysql-test/suite/rpl/r/rpl_truncate_2myisam.result: STOP SLAVE was replaced with include file. mysql-test/suite/rpl/r/rpl_truncate_3innodb.result: STOP SLAVE was replaced with include file.
-
Chad MILLER authored
The check for root-ness would signal an error. Errors would make the server exit before usage (help) information was printed. Now, test for whether we want help regardless of whether we're going to exit with an error. If plugins are not initialized by the time we print usage information, inform the user that some parameters are missing.
-
Georgi Kodinov authored
-
Georgi Kodinov authored
based on NetBSD CVS as of 2009/02/06 20:09:00.
-
Vladislav Vaintroub authored
-
Luis Soares authored
There is an inconsistency with DROP DATABASE IF EXISTS, DROP TABLE IF EXISTS and DROP VIEW IF EXISTS: those are binlogged even if the DB or TABLE does not exist, whereas DROP PROCEDURE IF EXISTS does not. It would be nice or at least consistent if DROP PROCEDURE/STATEMENT worked the same too. Fixed DROP PROCEDURE|FUNCTION IF EXISTS by adding a call to write_bin_log in mysql_execute_command. Checked also if all documented "DROP (...) IF EXISTS" get binlogged. Left out DROP SERVER IF EXISTS because it seems that it only gets binlogged when using row event (see BUG#25705).
-
Bjorn Munch authored
Perl crashes when MTR 2 tries to start v1 Replaced require with system()
-
Georgi Kodinov authored
The parser was not using the correct fully-qualified-name production for DROP FUNCTION. Fixed by copying the production from DROP PROCEDURE. Tested in the windows specific suite to make sure it's tested on a case-insensitive file system. mysql-test/r/windows.result: Bug #33813: test case mysql-test/t/windows.test: Bug #33813: test case sql/sql_yacc.yy: Bug #33813: use the correct production for the name in DROP PROCEDURE
-
- 09 Feb, 2009 6 commits
-
-
Mats Kindahl authored
-
Davi Arnaut authored
-
Vladislav Vaintroub authored
Fix: use FormatMessage() to output system errors , not strerror()
-
Davi Arnaut authored
The problem is that a unfiltered user query was being passed as the format string parameter of sql_print_warning which later performs printf-like formatting, leading to crashes if the user query contains formatting instructions (ie: %s). Also, it was using THD::query as the source of the user query, but this variable is not meaningful in some situations -- in a delayed insert, it points to the table name. The solution is to pass the user query as a parameter for the format string and use the function parameter query_arg as the source of the user query. mysql-test/suite/binlog/r/binlog_unsafe.result: Add test case result for Bug#42634 mysql-test/suite/binlog/t/binlog_unsafe.test: Add test case for Bug#42634 sql/sql_class.cc: Don't pass the user query as a format string.
-
Sergey Glukhov authored
added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin mysql-test/r/innodb_ignore_builtin.result: test case mysql-test/t/innodb_ignore_builtin-master.opt: test case mysql-test/t/innodb_ignore_builtin.test: test case sql/mysql_priv.h: added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin sql/mysqld.cc: added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin sql/set_var.cc: added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin sql/sql_plugin.cc: added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin
-
Vladislav Vaintroub authored
- /tmp directory is not guaranteed to exist on Windows. Use the value of environment variable TEMP here
-
- 07 Feb, 2009 5 commits
-
-
Timothy Smith authored
-
Timothy Smith authored
-
Timothy Smith authored
-
Joerg Bruehe authored
-
unknown authored
-
- 06 Feb, 2009 1 commit
-
-
Joerg Bruehe authored
-