closes #5729, when returning TOKUDB_TRY_AGAIN, don't ever set the write lock type to expensive

git-svn-id: file:///svn/toku/tokudb@50514 c7de825b-a66e-492c-adef-691d508d4ae1
This commit is contained in:
Zardosht Kasheff 2013-04-17 00:01:19 -04:00 committed by Yoni Fogel
parent ebdf618b76
commit bb07e09525

View file

@ -1948,6 +1948,10 @@ maybe_pin_pair(
else if (lock_type == PL_WRITE_EXPENSIVE || lock_type == PL_WRITE_CHEAP){
if (p->value_rwlock.write_lock_is_expensive()) {
run_unlockers(p, unlockers);
// change expensive to false because
// we will unpin the pair immedietely
// after pinning it
expensive = false;
retval = TOKUDB_TRY_AGAIN;
}
p->value_rwlock.write_lock(expensive);