diff options
Diffstat (limited to 'src/third_party/wiredtiger/src/reconcile/rec_visibility.c')
-rw-r--r-- | src/third_party/wiredtiger/src/reconcile/rec_visibility.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_visibility.c b/src/third_party/wiredtiger/src/reconcile/rec_visibility.c index caf7f183685..855fa327439 100644 --- a/src/third_party/wiredtiger/src/reconcile/rec_visibility.c +++ b/src/third_party/wiredtiger/src/reconcile/rec_visibility.c @@ -822,13 +822,16 @@ __wt_rec_upd_select(WT_SESSION_IMPL *session, WT_RECONCILE *r, WT_INSERT *ins, W WT_ASSERT(session, upd_select->upd == NULL || upd_select->upd->txnid != WT_TXN_ABORTED); /* * We should never select an update that has been written to the history store except checkpoint - * writes the update that is older than a prepared update. + * writes the update that is older than a prepared update or we need to first delete the update + * from the history store. */ WT_ASSERT(session, upd_select->upd == NULL || !F_ISSET(upd_select->upd, WT_UPDATE_HS) || + F_ISSET(upd_select->upd, WT_UPDATE_TO_DELETE_FROM_HS) || (!F_ISSET(r, WT_REC_EVICT) && seen_prepare)); WT_ASSERT(session, tombstone == NULL || !F_ISSET(tombstone, WT_UPDATE_HS) || + F_ISSET(tombstone, WT_UPDATE_TO_DELETE_FROM_HS) || (!F_ISSET(r, WT_REC_EVICT) && seen_prepare)); /* |