diff options
author | Luke Chen <luke.chen@mongodb.com> | 2022-12-05 16:26:00 +1100 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-12-05 05:54:13 +0000 |
commit | 55da6eb8d2ee810cba946c4bf2606c15afd1f275 (patch) | |
tree | 2e0a3a76a896727f374e11e67b9c61a3f32623ea | |
parent | 4f3a1bacec04208b2f763a5e1b13d30b4fa29470 (diff) | |
download | mongo-55da6eb8d2ee810cba946c4bf2606c15afd1f275.tar.gz |
Import wiredtiger: 2f5d15ff28b6fd3351524cc8bcbd5b6ecc489670 from branch mongodb-5.0
ref: 9e3e02fd3e..2f5d15ff28
for: 5.0.15
WT-9428 Fix two asserts in rec_visibility.c
-rw-r--r-- | src/third_party/wiredtiger/import.data | 2 | ||||
-rw-r--r-- | src/third_party/wiredtiger/src/reconcile/rec_visibility.c | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/third_party/wiredtiger/import.data b/src/third_party/wiredtiger/import.data index df3946cbfea..63bb920d1ae 100644 --- a/src/third_party/wiredtiger/import.data +++ b/src/third_party/wiredtiger/import.data @@ -2,5 +2,5 @@ "vendor": "wiredtiger", "github": "wiredtiger/wiredtiger.git", "branch": "mongodb-5.0", - "commit": "9e3e02fd3e5a0e536c91fcdc4464429638cd6c23" + "commit": "2f5d15ff28b6fd3351524cc8bcbd5b6ecc489670" } 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)); /* |