From: Dmitry Shulga Date: October 27 2010 9:37am Subject: bzr commit into mysql-5.1-bugteam branch (Dmitry.Shulga:3547) Bug#56619 List-Archive: http://lists.mysql.com/commits/122057 X-Bug: 56619 Message-Id: <201010270938.o9QLEAuu001985@rcsinet15.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1455049088==" --===============1455049088== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///Users/shulga/projects/mysql/5.1-bugteam-bug56619/ based on revid:bjorn.munch@stripped 3547 Dmitry Shulga 2010-10-27 Fixed bug#56619 - Assertion failed during ALTER TABLE RENAME, DISABLE KEYS. @ mysql-test/suite/innodb/r/innodb_mysql.result Added test results for test for bug#56619. @ mysql-test/suite/innodb/t/innodb_mysql.test Added test for bug#56619. @ sql/sql_table.cc mysql_alter_table() modified: moved acquisition of LOCK_open after call to ha_autocommit_or_rollback. modified: mysql-test/suite/innodb/r/innodb_mysql.result mysql-test/suite/innodb/t/innodb_mysql.test sql/sql_table.cc === modified file 'mysql-test/suite/innodb/r/innodb_mysql.result' --- a/mysql-test/suite/innodb/r/innodb_mysql.result 2010-10-05 08:11:56 +0000 +++ b/mysql-test/suite/innodb/r/innodb_mysql.result 2010-10-27 09:37:22 +0000 @@ -2620,3 +2620,10 @@ t2 CREATE TABLE `t2` ( CONSTRAINT `x` FOREIGN KEY (`fk`) REFERENCES `t1` (`pk`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 drop table t2, t1; +# +# Test for bug #56619 - Assertion failed during ALTER TABLE RENAME, DISABLE KEYS +# +DROP TABLE IF EXISTS t1, t2; +CREATE TABLE t1 (a INT, INDEX(a)) engine=innodb; +ALTER TABLE t1 RENAME TO t2, DISABLE KEYS; +DROP TABLE IF EXISTS t1, t2; === modified file 'mysql-test/suite/innodb/t/innodb_mysql.test' --- a/mysql-test/suite/innodb/t/innodb_mysql.test 2010-10-05 08:11:56 +0000 +++ b/mysql-test/suite/innodb/t/innodb_mysql.test 2010-10-27 09:37:22 +0000 @@ -845,3 +845,15 @@ create table t2 (fk int, key x (fk), constraint x foreign key (FK) references t1 (PK)) engine=InnoDB; show create table t2; drop table t2, t1; + +--echo # +--echo # Test for bug #56619 - Assertion failed during ALTER TABLE RENAME, DISABLE KEYS +--echo # +--disable_warnings +DROP TABLE IF EXISTS t1, t2; +--enable_warnings +CREATE TABLE t1 (a INT, INDEX(a)) engine=innodb; +--disable_warnings +ALTER TABLE t1 RENAME TO t2, DISABLE KEYS; +DROP TABLE IF EXISTS t1, t2; +--enable_warnings === modified file 'sql/sql_table.cc' --- a/sql/sql_table.cc 2010-10-19 10:27:09 +0000 +++ b/sql/sql_table.cc 2010-10-27 09:37:22 +0000 @@ -6832,7 +6832,6 @@ view_err: table->alias); } - VOID(pthread_mutex_lock(&LOCK_open)); /* Unlike to the above case close_cached_table() below will remove ALL instances of TABLE from table cache (it will also remove table lock @@ -6853,6 +6852,7 @@ view_err: */ ha_autocommit_or_rollback(thd, 0); + VOID(pthread_mutex_lock(&LOCK_open)); /* Then do a 'simple' rename of the table. First we need to close all instances of 'source' table. @@ -6884,7 +6884,8 @@ view_err: error= -1; } } - } + } else + VOID(pthread_mutex_lock(&LOCK_open)); if (error == HA_ERR_WRONG_COMMAND) { --===============1455049088== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/dmitry.shulga@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: dmitry.shulga@stripped\ # js74z786o2x0fkpq # target_branch: file:///Users/shulga/projects/mysql/5.1-bugteam-\ # bug56619/ # testament_sha1: 6a0e04a81dd15ca3b3c596aa248f2c9667a51cad # timestamp: 2010-10-27 16:37:37 +0700 # base_revision_id: bjorn.munch@stripped\ # n3fk1njmf0e066n9 # # Begin bundle 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 K4xtRofKJXleAMIbnvO3/i7kinChIQZqJjA= --===============1455049088==--