-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: WT2.6.0
-
Component/s: None
-
None
After a seemingly innocuous change (https://github.com/wiredtiger/wiredtiger/commit/57a103372f4ad5a763978d3a9aa0cc5e69ab635b), __wt_log_slot_join started hanging.
On further investigation, it turns out the code was relying on a side effect of calling __wt_random that the compiler couldn't figure out what slot would be used at compile time. After the change, optimized builds were caching the value of slot->slot_state and never noticing when the slot became available.
We need to force slot->slot_state to be read each iteration by marking the field volatile.
- is depended on by
-
SERVER-18647 WiredTiger changes for MongoDB 3.0.4
- Closed
-
SERVER-18648 WiredTiger changes for MongoDB 3.1.4
- Closed
-
SERVER-19532 WiredTiger changes for MongoDB 3.1.7
- Closed