diff options
author | Alexey Anisimov <alexey.anisimov@mongodb.com> | 2022-02-04 16:37:48 +1100 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-02-04 06:05:41 +0000 |
commit | a19d082465f66c7392626f5082f7c00ce49c869d (patch) | |
tree | 08ce2a325e2eb2155be0c3c863524f8f121ba609 | |
parent | 2a473fa3929f0f7ff9669cb156c3079a7b5b022b (diff) | |
download | mongo-a19d082465f66c7392626f5082f7c00ce49c869d.tar.gz |
Import wiredtiger: 781d8746198fdce53f2dbea8485635f8965595eb from branch mongodb-master
ref: f76e9e4452..781d874619
for: 5.3.0
WT-8709 RTS: Do not hold the oldest id of logged tables.
-rw-r--r-- | src/third_party/wiredtiger/import.data | 2 | ||||
-rw-r--r-- | src/third_party/wiredtiger/src/include/txn_inline.h | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/third_party/wiredtiger/import.data b/src/third_party/wiredtiger/import.data index 10afb18dd18..e3dc839508c 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-master", - "commit": "f76e9e4452ef39d30a5349a2bb411b6db937de96" + "commit": "781d8746198fdce53f2dbea8485635f8965595eb" } diff --git a/src/third_party/wiredtiger/src/include/txn_inline.h b/src/third_party/wiredtiger/src/include/txn_inline.h index 68f3a523458..dfe431aee14 100644 --- a/src/third_party/wiredtiger/src/include/txn_inline.h +++ b/src/third_party/wiredtiger/src/include/txn_inline.h @@ -470,11 +470,13 @@ __wt_txn_oldest_id(WT_SESSION_IMPL *session) /* * The read of the transaction ID pinned by a checkpoint needs to be carefully ordered: if a * checkpoint is starting and we have to start checking the pinned ID, we take the minimum of it - * with the oldest ID, which is what we want. + * with the oldest ID, which is what we want. The logged tables are excluded as part of RTS, so + * there is no need of holding their oldest_id */ WT_READ_BARRIER(); - if (!F_ISSET(conn, WT_CONN_RECOVERING)) { + if (!F_ISSET(conn, WT_CONN_RECOVERING) || session->dhandle == NULL || + __wt_btree_immediately_durable(session)) { /* * Checkpoint transactions often fall behind ordinary application threads. If there is an * active checkpoint, keep changes until checkpoint is finished. |