-
Type: Bug
-
Resolution: Fixed
-
Priority: Minor - P4
-
Affects Version/s: None
-
Component/s: None
-
5
While working onĀ WT-8706, we wanted to do the following change:
--- a/src/txn/txn.c +++ b/src/txn/txn.c @@ -2294,6 +2294,7 @@ __wt_txn_is_blocking(WT_SESSION_IMPL *session) if (F_ISSET(txn, WT_TXN_PREPARE)) return (0); +#ifndef WT_STANDALONE_BUILD /* * MongoDB can't (yet) handle rolling back read only transactions. For this reason, don't check * unless there's at least one update or we're configured to time out thread operations (a way @@ -2301,6 +2302,7 @@ __wt_txn_is_blocking(WT_SESSION_IMPL *session) */ if (txn->mod_count == 0 && !__wt_op_timer_fired(session)) return (0); +#endif
See this comment for more details. However, this change causes some tests to fail. Indeed, our CMake build definesĀ WT_STANDALONE_BUILD by default which means this code is no longer present in the compiled objects.
The scope of this ticket is to investigate if:
- Adding this flag is correct
- If it is, fix the impacted tests
- causes
-
WT-8966 Failed test_random_abort: WT_ROLLBACK conflict between concurrent operations
- Closed
-
WT-8991 Implement a retry mechanism for transactions that may rollback
- Closed
- related to
-
SERVER-44870 MongoDB to allow WiredTiger to return WT_ROLLBACK for all transactions
- Backlog