diff options
author | Luke Chen <luke.chen@mongodb.com> | 2021-05-04 16:46:32 +1000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2021-05-04 07:11:56 +0000 |
commit | b95dcba11fa544ee37e3323ebd95131d13d1e814 (patch) | |
tree | 0e4acd94e9d651cfacccacd0dd57a396c44a84a0 | |
parent | c712d5ddbd852b03331284ab9e08bae3addb4aa0 (diff) | |
download | mongo-b95dcba11fa544ee37e3323ebd95131d13d1e814.tar.gz |
Import wiredtiger: 637a8d089e42882db1209009df312d5a9491d238 from branch mongodb-5.0
ref: 652def8ae4..637a8d089e
for: 5.0.0
WT-7474 Reset cursor-order checks whenever a search is performed
-rw-r--r-- | src/third_party/wiredtiger/import.data | 2 | ||||
-rw-r--r-- | src/third_party/wiredtiger/src/btree/bt_cursor.c | 18 |
2 files changed, 19 insertions, 1 deletions
diff --git a/src/third_party/wiredtiger/import.data b/src/third_party/wiredtiger/import.data index aa12ed897f8..fe680b4050f 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": "652def8ae433a2001145d34baec9ef9f5610a97e" + "commit": "637a8d089e42882db1209009df312d5a9491d238" } diff --git a/src/third_party/wiredtiger/src/btree/bt_cursor.c b/src/third_party/wiredtiger/src/btree/bt_cursor.c index 481a1632a08..9449be9603a 100644 --- a/src/third_party/wiredtiger/src/btree/bt_cursor.c +++ b/src/third_party/wiredtiger/src/btree/bt_cursor.c @@ -348,6 +348,15 @@ __cursor_col_search(WT_CURSOR_BTREE *cbt, WT_REF *leaf, bool *leaf_foundp) WT_SESSION_IMPL *session; session = CUR2S(cbt); + +#ifdef HAVE_DIAGNOSTIC + /* + * Turn off cursor-order checks in all cases on search. The search/search-near functions turn + * them back on after a successful search. + */ + __wt_cursor_key_order_reset(cbt); +#endif + WT_WITH_PAGE_INDEX( session, ret = __wt_col_search(cbt, cbt->iface.recno, leaf, false, leaf_foundp)); return (ret); @@ -364,6 +373,15 @@ __cursor_row_search(WT_CURSOR_BTREE *cbt, bool insert, WT_REF *leaf, bool *leaf_ WT_SESSION_IMPL *session; session = CUR2S(cbt); + +#ifdef HAVE_DIAGNOSTIC + /* + * Turn off cursor-order checks in all cases on search. The search/search-near functions turn + * them back on after a successful search. + */ + __wt_cursor_key_order_reset(cbt); +#endif + WT_WITH_PAGE_INDEX( session, ret = __wt_row_search(cbt, &cbt->iface.key, insert, leaf, false, leaf_foundp)); return (ret); |