diff options
author | Siddhartha Mahajan <siddhartha.mahajan8899@mongodb.com> | 2022-11-04 00:16:08 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-11-04 00:45:59 +0000 |
commit | f02acba54fd16b0ffd84a97a138e0208dd6e8b5c (patch) | |
tree | 0a51a9a046c1ad9e4fe1f17ca921984256a2e03c /src/third_party/wiredtiger/test | |
parent | 83c60c5c0becf03dc65cc49de1ac5ae4feb8654e (diff) | |
download | mongo-f02acba54fd16b0ffd84a97a138e0208dd6e8b5c.tar.gz |
Import wiredtiger: a69bf663f43889880669a5e9e5fd76107f9951b5 from branch mongodb-master
ref: 0cafef49af..a69bf663f4
for: 6.2.0-rc0
WT-9846 Use oldest unstable timestamp to clean history store when no stable updates are on chain
Diffstat (limited to 'src/third_party/wiredtiger/test')
-rwxr-xr-x | src/third_party/wiredtiger/test/suite/test_rollback_to_stable06.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/third_party/wiredtiger/test/suite/test_rollback_to_stable06.py b/src/third_party/wiredtiger/test/suite/test_rollback_to_stable06.py index 676bf934b6e..38f1661166f 100755 --- a/src/third_party/wiredtiger/test/suite/test_rollback_to_stable06.py +++ b/src/third_party/wiredtiger/test/suite/test_rollback_to_stable06.py @@ -129,5 +129,20 @@ class test_rollback_to_stable06(test_rollback_to_stable_base): else: self.assertGreaterEqual(upd_aborted + hs_removed + keys_removed, nrows * 4) + if not self.in_memory and self.key_format == 'i': + # FIXME-WT-10017: WT-9846 is a temporary fix only for row store and a + # more complete fix including column store will be made in WT-10017. + # Once delivered the key_format == 'i' check is no longer needed. + # + # Reinsert the same updates with the same timestamps and flush to disk. + # If the updates have not been correctly removed by RTS WiredTiger will + # see the key already exists in the history store and abort. + self.large_updates(uri, value_a, ds, nrows, self.prepare, 20) + self.large_updates(uri, value_b, ds, nrows, self.prepare, 30) + self.large_updates(uri, value_c, ds, nrows, self.prepare, 40) + self.large_updates(uri, value_d, ds, nrows, self.prepare, 50) + + self.session.checkpoint() + if __name__ == '__main__': wttest.run() |