summaryrefslogtreecommitdiff
path: root/mysql-test
Commit message (Collapse)AuthorAgeFilesLines
* merge with mysql-5.5.30 minus few incorrect or not applicable changesetsSergei Golubchik2013-02-2897-1307/+1950
|\
| * A bit more intelligent processing of .in files in mysql-test/collectionsBjorn Munch2013-01-151-2/+4
| |
| * Fix for Bug#14636211 WRONG RESULT (EXTRA ROW) ON A FROM SUBQUERY Olav Sandstaa2013-01-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WITH A VARIABLE AND ORDER BY Bug#16035412 MYSQL SERVER 5.5.29 WRONG SORTING USING COMPLEX INDEX This is a fix for a regression introduced by Bug#12667154: Bug#12667154 attempted to fix a performance problem with subqueries that did filesort. For doing filesort, the optimizer creates a quick select object to use when building the sort index. This quick select object was deleted after the first call to create_sort_index(). Thus, for queries where the subquery was executed multiple times, the quick object was only used for the first execution. For all later executions of the subquery, filesort used a complete table scan for building the sort index. The fix for Bug#12667154 tried to fix this by not deleting the quick object after the first execution of create_sort_index() so that it would be re-used for building the sort index by the following executions of the subquery. This regression introduced in Bug#12667154 is that due to not deleting the quick select object after building the sort index, the quick object could in some cases be used also during the second phase of the execution of the subquery instead of using the created sort index. This caused wrong results to be returned. The fix for this issue is to delete the reference to the select object after it has been used in create_sort_index(). In this way the select and quick objects will not be available when doing the second phase of the execution of the select operation. To ensure that the select object can be re-used for the following executions of the subquery we make a copy of the select pointer. This is used for restoring the select object after the select operation is completed. mysql-test/suite/innodb/r/innodb_mysql.result: Changed explain output: The explain now contains "Using where" since we have restored the select pointer after doing the filesort operation. sql/sql_select.cc: Change create_sort_index() so that it always sets the pointer to the select object to NULL. This is done in order to avoid that the select->quick object can be used when execution the main part of the select operation. sql/sql_select.h: New member in JOIN_TAB: saved_select. Used by create_sort_index to make a backup copy of the select pointer.
| * Bug#16060864 SEGMENTATION FAULT IN PERFORMANCE_SCHEMA WITH HISTORY SIZE 0Marc Alff2013-01-029-0/+329
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this fix, configuring the server with: - performance_schema_events_waits_history_size=0 - performance_schema_events_waits_history_long_size=0 could cause a crash in the performance schema. These settings to 0 are intended to be valid and supported, and are in fact working properly in mysql 5.6 and up already. This fix backports the code fix and test cases from mysql 5.6 to the mysql 5.5 release.
| * upmerge 14737171 5.1=>5.5unknown2012-12-121-1/+3
| |\
| | * Bug #14737171:MTR DOES NOT PRESERVE TEST CASE LOGS ON RETRY-FAILunknown2012-12-121-1/+3
| | |
| * | upmerge 14737171 5.1 => 5.5unknown2012-12-111-0/+2
| |\ \ | | |/
| | * Bug #14737171: MTR DOES NOT PRESERVE TEST CASE LOGS ON RETRY-FAILunknown2012-12-111-0/+2
| | |
| * | Merging from mysql-5.1 to mysql-5.5. Annamalai Gurusami2012-12-113-3/+3
| |\ \ | | |/
| | * Bug #14200010 NEWLY CREATED TABLE DOESN'T ALLOW FOR LOOSE INDEX SCANSAnnamalai Gurusami2012-12-112-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Before the ALTER TABLE statement, the array dict_index_t::stat_n_diff_key_vals had proper values calculated and updated. But after the ALTER TABLE statement, all the values of this array is 0. Because of this statistics returned by innodb_rec_per_key() is different before and after the ALTER TABLE statement. Running the ANALYZE TABLE command populates the statistics correctly. Solution: After ALTER TABLE statement, set the flag dict_table_t::stat_initialized correctly so that the table statistics will be recalculated properly when the table is next loaded. But note that we still don't choose the loose index scans. This fix only ensures that an ALTER TABLE does not change the optimizer plan. rb://1639 approved by Marko and Jimmy.
| * | BUG#12359942 - REPLICATION TEST FROM ENGINE SUITE RPL_ROW_UNTIL TIMES OUTShivji Kumar Jha2012-12-092-24/+1
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | patch to fix post push falures in pb2 bzr merge 5.1->5.5 BUG#15872504 - REMOVE MYSQL-TEST/INCLUDE/GET_BINLOG_DUMP_THREAD_ID.INC bzr merge 5.1->5.6
| | * BUG#12359942 - REPLICATION TEST FROM ENGINE SUITE PL_ROW_UNTIL TIMES OUTShivji Kumar Jha2012-12-094-25/+3
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | patch to fix post push falures in pb2 BUG#15872504 - REMOVE MYSQL-TEST/INCLUDE/GET_BINLOG_DUMP_THREAD_ID.INC === Problem === The file named "mysql-test/include/get_binlog_dump_thread_id.inc" is not used anywhere. In any case, this file does wrong things in the wrong way: 1) The file seems to assume there is only one dump thread, but there may be many. 2) you can get this information in a much easier way using the command: "select thread_id from threads where processlist_command="Binlog Dump";" === Fix === removed file 'mysql-test/include/get_binlog_dump_thread_id.inc'
| | | * BUG#12359942 - REPLICATION TEST FROM ENGINE SUITE Shivji Kumar Jha2012-12-093-3/+3
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RPL_ROW_UNTIL TIMES OUT patch to fix post push falures in pb2 mysql-test/suite/rpl/r/rpl_row_until.result: changes to account for the changes made in corresponding test file. mysql-test/suite/rpl/t/disabled.def: disabled test in macosx mysql-test/suite/rpl/t/rpl_row_until.test: replaced static relayy log file by an mtr variable which saves the name of relay log file.
| * | Bug #15930494 MYSQLDUMP TEST SOMETIMES FAILS DUE TO MIXING STDOUT ANDAkhila Maddukuri2012-12-072-13/+25
| | | | | | | | | | | | | | | | | | | | | STDERR Fix: Added a destination file to mysqldump.
| * | Remove moot --unit-test option for mtr in collectionsBjorn Munch2012-12-052-2/+2
| | |
| * | BUG#12359942 - REPLICATION TEST FROM ENGINE SUITE RPL_ROW_UNTIL TIMES OUTShivji Kumar Jha2012-12-054-271/+153
| |\ \ | | |/ | | | | | | bzr merge 5.1->5.5
| | * BUG#12359942 - REPLICATION TEST FROM ENGINE SUITE RPL_ROW_UNTIL TIMES OUTShivji Kumar Jha2012-11-304-262/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | === Problem === The test is dependent on binlog positions and checks to see if the command 'START SLAVE' functions correctly with the 'UNTIL' clause added to it. The 'UNTIL' clause is added to specify that the slave should start and run until the SQL thread reaches a given point in the master binary log or in the slave relay log. The test uses hard coded values for MASTER_LOG_POS and RELAY_LOG_POS, instead of extracting it using query_get_value() function. There is a test 'rpl.rpl_row_until' which does the similar thing but uses query_get_value() function to set the values of MASTER_LOG_POS/ RELAY_LOG_POS. To be precise, rpl.rpl_row_until is a modified version of engines/func.rpl_row_until.test. The use of hard coded values may lead the slave to stop at a position which may differ from the expected position in the binlog file, an example being the failure of engines/funcs.rpl_row_until in mysql-5.1 given as: "query 'select * from t2' failed. Table 'test.t2' doesn't exist". In this case, the slave actually ran a couple of extra commands as a result of which the slave first deleted the table and then ran a select query on table, leading to the above mentioned failure. === Fix === 1) Fixed the code for failure seen in rpl.rpl_row_until. This test was also failing although the symptoms of failure were different. 2) Copied the contents from rpl.rpl_row_until into into engines/funcs.rpl.rpl_row_until. 3) Updated engines/funcs.rpl_row_until.result accordingly. mysql-test/suite/engines/funcs/r/rpl_row_until.result: modified to accomodate the changes in corresponding test file. mysql-test/suite/engines/funcs/t/disabled.def: removed from the list of disabled tests. mysql-test/suite/engines/funcs/t/rpl_row_until.test: fixed rpl.rpl_row_until and copied its content to engines/funcs.rpl_row_until. The reason being both are same tests but rpl.rpl_row_until is an updated version. mysql-test/suite/rpl/t/disabled.def: removed from the list of disabled tests. sql/sql_repl.cc: Added a check to catch an improper combination of arguements passed to 'START SLAVE UNTIL'. Earlier, START SLAVE UNTIL MASTER_LOG_FILE='master-bin.000001', MASTER_LOG_POS=561, RELAY_LOG_POS=12; passed. It is now detected and an error is reported.
| * | Bug#13545447 RPL_ROTATE_LOGS FAILS DUE TO CONCURRENCY ISSUES IN REP. CODEPedro Gomes2012-12-042-30/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RPL_ROTATE_LOGS has been failing sporadically in what seems a problem related to routines that update the coordinates. However, the test lacks proper assert statments and because of this the debug information upon failure simply points to the content mismatch between the test and the result file. Not as a solution, but as a improvement to the test to better debug this failure, new assert statments were added to the test. @rpl_rotate_logs.test Added new assert statments reducing the dependency on the result file. @rpl_rotate_logs.result Added new content to the result file to match the test changes
| * | BUG#13812374 - RPL.RPL_REPORT_PORT FAILS OCCASIONALLY ON PB2Manish Kumar2012-12-042-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The problem with the test is that the slave returns from start_slave.inc call too early before the list is actually actualised. This caused the slave stale data to be reported. Fix: Added a wait in the test till the slave's IO status is changed to "Waiting for master to send event" which which ensures the list is correctly updated.
| * | Bug#59354 : Bug #12659252 : ASSERT !OTHER_LOCK AT LOCK_REC_ADD_TO_QUEUE ↵Yasufumi Kinoshita2012-11-282-0/+114
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | | | | DURING A DELETE OPERATION The converted implicit lock should wait for the prior conflicting lock if found. rb://1437 approved by Marko
| * | Reinstate install of mysql-test/lib/My/SafeProcess/Base.pm, removed by mistakeBjorn Munch2012-11-261-0/+1
| | |
| * | upmerge 5.1 => 5.5unknown2012-11-263-171/+11
| |\ \ | | |/
| | * Bug #14757120 - SAFE_PROCESS.CC/SAFE_PROCESS.PL SHOULD NOT KILL MYSQLD ON ↵unknown2012-11-263-172/+12
| | | | | | | | | | | | SIGSTOP/SIGCONT
| * | Added new line at the end to resolve PB2 per push errors.Venkata Sidagam2012-11-261-1/+2
| | |
| * | BUG#15891524: RLI_FAKE MODE IS NOT UNSET AFTER BINLOG REPLAYNuno Carvalho2012-11-2016-0/+417
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a binlog is replayed into a server, e.g.: $ mysqlbinlog binlog.000001 | mysql it sets a pseudo slave mode on the client connection in order to server be able to read binlog events, there is, a format description event is needed to correctly read following events. Also this pseudo slave mode applies to the current connection replication rules that are needed to correctly apply binlog events. If a binlog dump is sourced on a connection, this pseudo slave mode will remains after it, what will apply unexpected rules from customer perspective to following commands. Added a new SET statement to binlog dump that will unset pseudo slave mode at the end of dump file.
| * | BUG #15895810 - REQUIRE ADDITIONAL INFORMATION WITH THE --RESULT-FILE OPTION ↵unknown2012-11-202-9/+11
| | | | | | | | | | | | OF MTR
| * | Bug#14463669 FAILURE TO CORRECTLY PARSE ROUTINES INVamsikrishna Bhagi2012-11-201-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MYSQLDUMP OUTPUT A patch is pushed on this bug. A result mismatch occured for the test main.ddl_i18n_utf8 in x86_64 gcov build of linux in pb2. This commit is to modify ddl_i18n_utf8.result to match the changes made for the bug.
| * | Bug#14463669 FAILURE TO CORRECTLY PARSE ROUTINES INVamsikrishna Bhagi2012-11-201-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MYSQLDUMP OUTPUT A patch is pushed on this bug. A result mismatch occured for the test main.ddl_i18n_koi8r in x86_64 gcov build of linux in pb2. This commit is to modify ddl_i18n_koi8r.result to match the changes made for the bug.
| * | Bug#14463669 FAILURE TO CORRECTLY PARSE ROUTINES INVamsikrishna Bhagi2012-11-191-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MYSQLDUMP OUTPUT Problem: mysqldump when used with option --routines, dumps all the routines of the specified database into output. The statements in this output are written in such a way that they are version safe using C style version commenting (of the format /*!<version num> <sql statement>*/). If a semicolon is present right before closing of the comment in dump output, it results in a syntax error while importing. Solution: Version comments for dumped routines are specifically to protect the ones older than 5.0. When the import is done on 5.0 or later versions, entire create statement gets executed as all the check conditions at the beginning of the comments are cleared. Since the trade off is between the performance of newer versions which are more in use and protection of very old versions which are no longer supported, it is proposed that these comments be removed altogether to maintain stability of the versions supported. client/mysqldump.c: Bug#14463669 FAILURE TO CORRECTLY PARSE ROUTINES IN MYSQLDUMP OUTPUT Output of mysqldump is derived by getting the queries from show create and appending version comments to them. query_str is the variable used to store the final string. Since it is no longer required, its declaration and manipulations made on it are deleted. At the step where output is printed, query_str is replaced with the original query string derived from 'show create'.
| * | Bug#14147491 - INFINITE LOOP WHEN OPENING A CORRUPTED TABLESatya Bodapati2012-11-193-0/+93
| | | | | | | | | | | | | | | | | | This bug is fixed by Bug#14251529. Only testcase from the contribution is used.
| * | Mergeunknown2012-11-167-474/+9
| |\ \
| | * | remove usage of --skip-ndb from collectionsunknown2012-11-157-474/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - no need to use --skip-ndb in collections files anymore, since long but more clear logic after recent mtr.pl fixes. ndb tests are never run in MySQL Server unless explicitly requested - remove sys_vars.ndb_log_update_as_write_basic.test and sys_vars.ndb_log_updated_only_basic.result since MySQL Server does not have those options. - Only sys_vars.have_ndbcluster_basic left since MySQL Server has that variable hardcoded.
| * | | Merge mysql-5.1 to mysql-5.5.Marko Mäkelä2012-11-152-18/+0
| |\ \ \ | | |/ / | |/| / | | |/
| * | Fix Bug #14753402 - FAILING ASSERTION: LEN == IFIELD->FIXED_LENJimmy Yang2012-11-142-0/+18
| | | | | | | | | | | | | | | rb://1411 approved by Marko
| * | Mergeunknown2012-11-132-58/+80
| |\ \
| | * | mtr.plunknown2012-11-041-21/+0
| | | | | | | | | | | | | | | | | | | | - remove unused hack to turn on extra suites based on current directory name - remove 4 your old debug printout of "vardir: <dir>"
| | * | mtr.plunknown2012-11-042-37/+80
| | | | | | | | | | | | | | | | | | | | - improve the logic that decides when ndbcluster should be enabled and the extra test suites for MySQL Cluster should be added. Should be consistent and logical now ;)
| * | | This is a backport of "WL#5674 InnoDB: report all deadlocks (Bug#1784)"Vasil Dimov2012-11-122-0/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from MySQL 5.6 into MySQL 5.5 Will close Bug#14515889 BACKPORT OF INNODB DEADLOCK LOGGING TO 5.5 The original implementation is in vasil.dimov@oracle.com-20101213120811-k2ldtnao2t6zrxfn Approved by: Jimmy (rb:1535)
| * | | Bug #14676111 WRONG PAGE_LEVEL WRITTEN FOR UPPER THAN FATHER PAGE AT ↵Yasufumi Kinoshita2012-11-124-0/+289
| |\ \ \ | | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BTR_LIFT_PAGE_UP() btr_lift_page_up() writes wrong page number (different by -1) for upper than father page. But in almost all of the cases, the father page should be root page, no upper pages. It is very rare path. In addition the leaf page should not be lifted unless the father page is root. Because the branch pages should not become the leaf pages. rb://1336 approved by Marko Makela.
| | * | Bug #14676111 WRONG PAGE_LEVEL WRITTEN FOR UPPER THAN FATHER PAGE AT ↵Yasufumi Kinoshita2012-11-124-0/+362
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BTR_LIFT_PAGE_UP() btr_lift_page_up() writes wrong page number (different by -1) for upper than father page. But in almost all of the cases, the father page should be root page, no upper pages. It is very rare path. In addition the leaf page should not be lifted unless the father page is root. Because the branch pages should not become the leaf pages. rb://1336 approved by Marko Makela.
| * | | Bug#11751825 - OPTIMIZE PARTITION RECREATES FULL TABLE INSTEAD JUST PARTITIONAditya A2012-11-081-24/+24
| |\ \ \ | | |/ / | | | / | | |/ | |/| Follow up patch to address the pb2 failures.
| | * Bug#11751825 - OPTIMIZE PARTITION RECREATES FULL TABLE INSTEAD JUST PARTITIONAditya A2012-11-081-24/+24
| | | | | | | | | | | | | | | Follow up patch to address the pb2 failures.
* | | MDEV-4208: Test rpl.rpl_rotate_purge_deadlock has incorrect preambleElena Stepanova2013-02-271-1/+1
| | |
* | | MDEV-3819 missing constraints for spatial column types.Alexey Botchkov2013-02-214-6/+22
| | | | | | | | | | | | | | | | | | Checks added to return and error when inappropriate geometry type is stored in a field.
* | | MDEV-4028 - Converted rdiff files to uniformElena Stepanova2013-02-03128-982/+1019
| | | | | | | | | | | | | | | | | | MDEV-11 - Modifed tests and result files to use explicit column lists in INSERT and SELECT statements
* | | Fix for MDEV-3948, and backport of the following collection of fixes and ↵unknown2013-01-289-0/+313
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | backports from MariaDB 10.0. The bug in mdev-3948 was an instance of the problem fixed by Sergey's patch in 10.0 - namely that the range optimizer could change table->[read | write]_set, and not restore it. revno: 3471 committer: Sergey Petrunya <psergey@askmonty.org> branch nick: 10.0-serg-fix-imerge timestamp: Sat 2012-11-03 12:24:36 +0400 message: # MDEV-3817: Wrong result with index_merge+index_merge_intersection, InnoDB table, join, AND and OR conditions Reconcile the fixes from: # # guilhem.bichot@oracle.com-20110805143029-ywrzuz15uzgontr0 # Fix for BUG#12698916 - "JOIN QUERY GIVES WRONG RESULT AT 2ND EXEC. OR # AFTER FLUSH TABLES [-INT VS NULL]" # # guilhem.bichot@oracle.com-20111209150650-tzx3ldzxe1yfwji6 # Fix for BUG#12912171 - ASSERTION FAILED: QUICK->HEAD->READ_SET == SAVE_READ_SET # and # and related fixes from: BUG#1006164, MDEV-376: Now, ROR-merged QUICK_RANGE_SELECT objects make no assumptions about the values of table->read_set and table->write_set. Each QUICK_ROR_SELECT has (and had before) its own column bitmap, but now, all QUICK_ROR_SELECT's functions that care: reset(), init_ror_merged_scan(), and get_next() will set table->read_set when invoked and restore it back to what it was before the call before they return. This allows to avoid the mess when somebody else modifies table->read_set for some reason.
* | | 5.3 mergeSergei Golubchik2013-01-287-0/+122
|\ \ \
| * \ \ 5.2 mergeSergei Golubchik2013-01-284-0/+45
| |\ \ \
| | * \ \ 5.1 mergeSergei Golubchik2013-01-254-0/+45
| | |\ \ \
| | | * | | MDEV-729 lp:998028 - Server crashes on normal shutdown in closefrm after ↵Sergei Golubchik2013-01-252-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | executing a query from MyISAM table don't write a key value into the record buffer - a key length can be larger then the record length.