diff options
Diffstat (limited to 'src/third_party/wiredtiger/src/reconcile/rec_write.c')
-rw-r--r-- | src/third_party/wiredtiger/src/reconcile/rec_write.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_write.c b/src/third_party/wiredtiger/src/reconcile/rec_write.c index c8eaebbd2b0..5bad5df9d9b 100644 --- a/src/third_party/wiredtiger/src/reconcile/rec_write.c +++ b/src/third_party/wiredtiger/src/reconcile/rec_write.c @@ -183,6 +183,9 @@ __reconcile_post_wrapup( btree = S2BT(session); + /* Ensure that we own the lock before unlocking the page, as we unlock it unconditionally. */ + WT_ASSERT_SPINLOCK_OWNED(session, &page->modify->page_lock); + page->modify->flags = 0; /* Release the reconciliation lock. */ @@ -251,6 +254,9 @@ __reconcile(WT_SESSION_IMPL *session, WT_REF *ref, WT_SALVAGE_COOKIE *salvage, u btree = S2BT(session); page = ref->page; + if (*page_lockedp) + WT_ASSERT_SPINLOCK_OWNED(session, &page->modify->page_lock); + /* Save the eviction state. */ __reconcile_save_evict_state(session, ref, flags); |