List:Commits« Previous MessageNext Message »
From:Kevin Lewis Date:December 16 2008 5:11pm
Subject:bzr push into mysql-6.0-falcon-team branch (klewis:2936) Bug#41035
View as plain text  
 2936 Kevin Lewis	2008-12-16
      Bug#41035 - It is possible for record objects to contain a 
      recordNumber == -1.  Table::getSyncPrior() is not prepared 
      for this and will return a bad pointer.
modified:
  storage/falcon/Table.cpp

=== modified file 'storage/falcon/Table.cpp'
--- a/storage/falcon/Table.cpp	2008-11-20 17:05:50 +0000
+++ b/storage/falcon/Table.cpp	2008-12-16 16:00:51 +0000
@@ -3808,7 +3808,8 @@ void Table::deleteRecordBacklog(int32 re
 
 SyncObject* Table::getSyncPrior(Record* record)
 {
-	int lockNumber = record->recordNumber % SYNC_VERSIONS_SIZE;
+	int recNumber = (record->recordNumber < 0) ? 0 : record->recordNumber;
+	int lockNumber = recNumber % SYNC_VERSIONS_SIZE;
 	return syncPriorVersions + lockNumber;
 }
 

Thread
bzr push into mysql-6.0-falcon-team branch (klewis:2936) Bug#41035Kevin Lewis16 Dec