Commit 29b6cc60 authored by Satya B's avatar Satya B

Additional Fix for BUG#44030 - Error: (1500) Couldn't read the MAX(ID) autoinc

                               value from the index (PRIMARY)


With the fix for BUG#46760, we correctly flag the presence of row_type 
only when it's actually changed and enables the FAST ALTER TABLE which was
disabled with the BUG#39200.

So the changes made by BUG#46760 makes MySQL data dictionaries to be out of 
sync but they are handled already by InnoDB with this BUG#44030.

The test was originally written to handle this but we requested Innodb to
update the test as the data dictionaries were in sync after the fix for 
BUG#39200.

Adjusting the innodb-autoinc testcase as mentioned in the comments.
parent 1014e5a2
...@@ -500,7 +500,6 @@ sub collect_one_suite($) ...@@ -500,7 +500,6 @@ sub collect_one_suite($)
# Exceptions # Exceptions
next if ($test->{'name'} eq 'main.innodb'); # Failed with wrong errno (fk) next if ($test->{'name'} eq 'main.innodb'); # Failed with wrong errno (fk)
next if ($test->{'name'} eq 'main.index_merge_innodb'); # Explain diff next if ($test->{'name'} eq 'main.index_merge_innodb'); # Explain diff
next if ($test->{'name'} eq 'main.innodb-autoinc'); # Need dfrnt result file
# innodb_file_per_table is rw with innodb_plugin # innodb_file_per_table is rw with innodb_plugin
next if ($test->{'name'} eq 'sys_vars.innodb_file_per_table_basic'); next if ($test->{'name'} eq 'sys_vars.innodb_file_per_table_basic');
# innodb_lock_wait_timeout is rw with innodb_plugin # innodb_lock_wait_timeout is rw with innodb_plugin
......
...@@ -880,6 +880,7 @@ d1 ...@@ -880,6 +880,7 @@ d1
1 1
3 3
INSERT INTO t1 VALUES(null); INSERT INTO t1 VALUES(null);
Got one of the listed errors
ALTER TABLE t1 AUTO_INCREMENT = 3; ALTER TABLE t1 AUTO_INCREMENT = 3;
INSERT INTO t1 VALUES(null); INSERT INTO t1 VALUES(null);
SELECT * FROM t1; SELECT * FROM t1;
...@@ -887,5 +888,4 @@ d1 ...@@ -887,5 +888,4 @@ d1
1 1
3 3
4 4
5
DROP TABLE t1; DROP TABLE t1;
...@@ -492,11 +492,7 @@ SELECT * FROM t1; ...@@ -492,11 +492,7 @@ SELECT * FROM t1;
# The MySQL and InnoDB data dictionaries should now be out of sync. # The MySQL and InnoDB data dictionaries should now be out of sync.
# The select should print message to the error log # The select should print message to the error log
SELECT * FROM t1; SELECT * FROM t1;
# MySQL have made a change (http://lists.mysql.com/commits/75268) that no -- error ER_AUTOINC_READ_FAILED,1467
# 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.
# -- error ER_AUTOINC_READ_FAILED,1467
INSERT INTO t1 VALUES(null); INSERT INTO t1 VALUES(null);
ALTER TABLE t1 AUTO_INCREMENT = 3; ALTER TABLE t1 AUTO_INCREMENT = 3;
INSERT INTO t1 VALUES(null); INSERT INTO t1 VALUES(null);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment