Commit 0e33e782 authored by Yoni Fogel's avatar Yoni Fogel

refs #4931 comment changes

git-svn-id: file:///svn/toku/tokudb@45368 c7de825b-a66e-492c-adef-691d508d4ae1
parent e75fb810
...@@ -3126,7 +3126,7 @@ log_open_txn (OMTVALUE txnv, u_int32_t UU(index), void *extra) { ...@@ -3126,7 +3126,7 @@ log_open_txn (OMTVALUE txnv, u_int32_t UU(index), void *extra) {
return 0; return 0;
} }
int int
toku_cachetable_begin_checkpoint (CACHETABLE ct, TOKULOGGER logger) { toku_cachetable_begin_checkpoint (CACHETABLE ct, TOKULOGGER logger) {
// Requires: All three checkpoint-relevant locks must be held (see checkpoint.c). // Requires: All three checkpoint-relevant locks must be held (see checkpoint.c).
// Algorithm: Write a checkpoint record to the log, noting the LSN of that record. // Algorithm: Write a checkpoint record to the log, noting the LSN of that record.
...@@ -3330,9 +3330,6 @@ toku_cachetable_end_checkpoint(CACHETABLE ct, TOKULOGGER logger, ...@@ -3330,9 +3330,6 @@ toku_cachetable_end_checkpoint(CACHETABLE ct, TOKULOGGER logger,
int retval = 0; int retval = 0;
cachetable_lock(ct); cachetable_lock(ct);
{ {
//
// #TODO: #1424 Long-lived get and pin (held by cursor) will cause a deadlock here.
// Need some solution (possibly modify requirement for write lock or something else).
PAIR p; PAIR p;
while ((p = ct->pending_head)!=0) { while ((p = ct->pending_head)!=0) {
ct->pending_head = ct->pending_head->pending_next; ct->pending_head = ct->pending_head->pending_next;
......
...@@ -108,7 +108,7 @@ toku_txn_commit(DB_TXN * txn, u_int32_t flags, ...@@ -108,7 +108,7 @@ toku_txn_commit(DB_TXN * txn, u_int32_t flags,
// get called first, otherwise we have bugs, such as #4145 and #4153 // get called first, otherwise we have bugs, such as #4145 and #4153
toku_txn_complete_txn(ttxn); toku_txn_complete_txn(ttxn);
r = toku_txn_release_locks(txn); r = toku_txn_release_locks(txn);
// this lock must be released after toku_txn_complete_txn because // this lock must be released after toku_txn_complete_txn and toku_txn_release_locks because
// this lock must be held until the references to the open FTs is released // this lock must be held until the references to the open FTs is released
// begin checkpoint logs these associations, so we must be protect // begin checkpoint logs these associations, so we must be protect
// the changing of these associations with checkpointing // the changing of these associations with checkpointing
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment