MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Kevin Lewis Date:February 14 2009 5:11pm
Subject:bzr commit into mysql-6.0-falcon-team branch (kevin.lewis:3018)
Bug#42828
View as plain text  
#At file:///C:/Work/bzr/Merge/mysql-6.0-falcon-team/ based on revid:kevin.lewis@stripped

 3018 Kevin Lewis	2009-02-14
      Bug#42828 - The background for this code is that we had found a duplicate key value in scanIndex so we know that at least one of the record versions contain a duplicate.  We search the base record and each prior record to find any and all possible duplicate records and see if
      they are visible or not.  If they are pending, we should wait for that other transaction to complete.  Here, we found a record version that is active but not a duplicate.  We must need to note the activeTransaction before looking further.  If we later find a duplicate that would be visible if this transaction completed, then we must wait on that active transaction.
      
      What happened here is that sometime between the instant that getRelativeState() was called to find that the dup->transaction was still pending and the current instant, the transaction was detached from that recordVersion.  The transaction was probably rolled back since that happens a lot quicker than a commit, writeComplete, and scavenge.
      
      This code can just safely keep looking for dups if the transaction is returned null here.
modified:
  storage/falcon/Table.cpp

=== modified file 'storage/falcon/Table.cpp'
--- a/storage/falcon/Table.cpp	2009-02-12 20:22:40 +0000
+++ b/storage/falcon/Table.cpp	2009-02-14 17:11:43 +0000
@@ -2693,7 +2693,8 @@ bool Table::checkUniqueRecordVersion(int
 			if (!activeTransaction)
 				{
 				activeTransaction = dup->getTransaction();
-				activeTransaction->addRef();
+				if (activeTransaction)
+					activeTransaction->addRef();
 				}
 
 			continue;  // check next record version

Thread
bzr commit into mysql-6.0-falcon-team branch (kevin.lewis:3018)Bug#42828Kevin Lewis14 Feb
  • Re: bzr commit into mysql-6.0-falcon-team branch (kevin.lewis:3018)Bug#42828Olav Sandstaa16 Feb
    • Re: bzr commit into mysql-6.0-falcon-team branch (kevin.lewis:3018)Bug#42828Kevin Lewis16 Feb