From: Date: August 7 2008 8:17pm Subject: bzr commit into mysql-6.0-falcon branch (vvaintroub:2769) Bug#38186 List-Archive: http://lists.mysql.com/commits/51132 X-Bug: 38186 Message-Id: <200808071817.m77IH626025035@mail.mysql.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit #At file:///C:/bzr/mysql-6.0-falcon-team/ 2769 Vladislav Vaintroub 2008-08-07 Bug#38186 Problem: Waiting for tablespace to be dropped has no effect. Cause: We are checking the the existence of wrong file (tableSpaceName) Solution: Change first parameter in waitForPendingDrops to be filename, not tablespace name. modified: storage/falcon/Database.cpp storage/falcon/StorageHandler.cpp === modified file 'storage/falcon/Database.cpp' --- a/storage/falcon/Database.cpp 2008-07-17 13:52:17 +0000 +++ b/storage/falcon/Database.cpp 2008-08-07 18:16:47 +0000 @@ -2282,6 +2282,10 @@ bool Database::hasUncommittedRecords(Tab return transactionManager->hasUncommittedRecords(table, transaction); } +void Database::waitForCommittedTransactions(Table* table) +{ + return transactionManager->waitForCommittedTransactions(table); +} void Database::commitByXid(int xidLength, const UCHAR* xid) { serialLog->commitByXid(xidLength, xid); === modified file 'storage/falcon/StorageHandler.cpp' --- a/storage/falcon/StorageHandler.cpp 2008-07-31 08:52:32 +0000 +++ b/storage/falcon/StorageHandler.cpp 2008-08-07 18:16:47 +0000 @@ -488,7 +488,7 @@ int StorageHandler::createTablespace(con TableSpaceManager *tableSpaceManager = dictionaryConnection->database->tableSpaceManager; - if (!tableSpaceManager->waitForPendingDrop(tableSpaceName, 10)) + if (!tableSpaceManager->waitForPendingDrop(filename, 10)) // file still exists after waiting for 10 seconds return StorageErrorTableSpaceExist;