Current Path : /home/usr.opt/mysql57/mysql-test/suite/innodb/t/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //home/usr.opt/mysql57/mysql-test/suite/innodb/t/innodb-autoinc-44030.test |
-- source include/have_innodb.inc # embedded server does not support restarting -- source include/not_embedded.inc # # 44030: Error: (1500) Couldn't read the MAX(ID) autoinc value from # the index (PRIMARY) # This test requires a restart of the server SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1; CREATE TABLE t1 (c1 INT PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB; INSERT INTO t1 VALUES (null); INSERT INTO t1 VALUES (null); ALTER TABLE t1 CHANGE c1 d1 INT NOT NULL AUTO_INCREMENT; SELECT * FROM t1; # Restart the server -- source include/restart_mysqld.inc # The MySQL and InnoDB data dictionaries should now be out of sync. # The select should print message to the error log SELECT * FROM t1; # MySQL have made a change (http://lists.mysql.com/commits/75268) that no # longer results in the two data dictionaries being out of sync. If they # revert their changes then this check for ER_AUTOINC_READ_FAILED will need # to be enabled. Also, see http://bugs.mysql.com/bug.php?id=47621. #-- error ER_AUTOINC_READ_FAILED,1467 INSERT INTO t1 VALUES(null); # Before WL#5534, the following statement would copy the table, # and effectively set AUTO_INCREMENT to 4, because while copying # it would write values 1,2,3 to the column. # WL#5534 makes this an in-place ALTER, setting AUTO_INCREMENT=3 for real. # However, to keep compatibility with ALGORITHM=COPY MySQL 5.6.11 will # go back to the original behaviour, setting AUTO_INCREMENT to 4. --enable_info ALTER TABLE t1 AUTO_INCREMENT = 3; --disable_info SHOW CREATE TABLE t1; INSERT INTO t1 VALUES(null); INSERT INTO t1 VALUES(null); SELECT * FROM t1; DROP TABLE t1;