#At file:///home/cpowers/work/dev/dev-08/mysql/
2852 Christopher Powers 2008-10-03
Bug#39845, "Falcon: Concurrent online DROP INDEX causes assertion"
modified:
storage/falcon/Table.cpp
per-file messages:
storage/falcon/Table.cpp
Get shared lock to Table::rollbackRecord() to prevent concurrent drop index.
=== modified file 'storage/falcon/Table.cpp'
--- a/storage/falcon/Table.cpp 2008-09-08 11:51:19 +0000
+++ b/storage/falcon/Table.cpp 2008-10-03 23:56:24 +0000
@@ -2117,7 +2117,10 @@ void Table::garbageCollect(Record *leavi
if (!leaving && !staying)
return;
- Sync syncPrior(getSyncPrior(leaving ? leaving : staying), "Table::garbageCollect");
+ Sync sync (&syncObject, "Table::garbageCollect(1)");
+ sync.lock(Shared);
+
+ Sync syncPrior(getSyncPrior(leaving ? leaving : staying), "Table::garbageCollect(2)");
syncPrior.lock(Shared);
// Clean up field indexes
| Thread |
|---|
| • bzr commit into mysql-6.0-falcon-team branch (cpowers:2852) Bug#39845 | Christopher Powers | 4 Oct |