Bug #42478 | Falcon crash in Database::updateSequence | ||
---|---|---|---|
Submitted: | 30 Jan 2009 13:55 | Modified: | 26 May 2010 17:47 |
Reporter: | Philip Stoev | Email Updates: | |
Status: | Unsupported | Impact on me: | |
Category: | MySQL Server: Falcon storage engine | Severity: | S1 (Critical) |
Version: | 6.0-falcon-team | OS: | Any |
Assigned to: | Vladislav Vaintroub | CPU Architecture: | Any |
Tags: | F_DDL, pb2 |
[30 Jan 2009 13:55]
Philip Stoev
[23 Feb 2009 16:22]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/67227 3030 Vladislav Vaintroub 2009-02-23 Bug#42478 : Falcon crash in Database::updateSequence The problem: when a Falcon table with autoincrement column is created ,Falcon will assign a sequence to table name /schema name combination. and use it to generate autoincrement values. When table is renamed, sequence is modified (table name changed). However, schema name changes are not taken into account when renaming. This is be a problem, because a) Falcon data dictionary (sequences table) is now corrupt. b) hash table sequences will have duplicate entries if there is a table with the same name and different schema. drop table may drop a wrong sequence. The fix is to take schema name into account when renaming a sequence. @ mysql-test/suite/falcon/r/falcon_bug_42478.result new test @ mysql-test/suite/falcon/t/falcon_bug_42478.test new test @ storage/falcon/Sequence.cpp when renaming sequence, take schema name into account @ storage/falcon/Sequence.h when renaming sequence, take schema name into account @ storage/falcon/SequenceManager.cpp when renaming sequence, take schema name into account @ storage/falcon/SequenceManager.h when renaming sequence, take schema name into account @ storage/falcon/StorageDatabase.cpp when renaming sequence, take schema name into account