Commit 1eef7665 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.

mysql-test/lib/mtr_cases.pm:
  Re-enable the innodb-autoinc test case for plugin as we have a common
  result file.
mysql-test/r/innodb-autoinc.result:
  Additional Fix for BUG#44030 - Error: (1500) Couldn't read the MAX(ID) autoinc 
                                 value from the index (PRIMARY)
  
  Adjust the innodb-autoinc testcase as the patch for BUG#46760 enables the 
  FAST ALTER TABLE and makes the data dictonaries go out of sync. This is 
  expected in the testcase.
mysql-test/t/innodb-autoinc.test:
  Additional Fix for BUG#44030 - Error: (1500) Couldn't read the MAX(ID) autoinc 
                                 value from the index (PRIMARY)
  
  Adjust the innodb-autoinc testcase as the patch for BUG#46760 enables the 
  FAST ALTER TABLE and makes the data dictonaries go out of sync. This is 
  expected in the testcase.
parent 9a42d81f
......@@ -500,7 +500,6 @@ sub collect_one_suite($)
# Exceptions
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.innodb-autoinc'); # Need dfrnt result file
# innodb_file_per_table is rw with innodb_plugin
next if ($test->{'name'} eq 'sys_vars.innodb_file_per_table_basic');
# innodb_lock_wait_timeout is rw with innodb_plugin
......
......@@ -880,6 +880,7 @@ d1
1
3
INSERT INTO t1 VALUES(null);
Got one of the listed errors
ALTER TABLE t1 AUTO_INCREMENT = 3;
INSERT INTO t1 VALUES(null);
SELECT * FROM t1;
......@@ -887,5 +888,4 @@ d1
1
3
4
5
DROP TABLE t1;
......@@ -492,11 +492,7 @@ SELECT * FROM t1;
# 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.
# -- error ER_AUTOINC_READ_FAILED,1467
-- error ER_AUTOINC_READ_FAILED,1467
INSERT INTO t1 VALUES(null);
ALTER TABLE t1 AUTO_INCREMENT = 3;
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