-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Test Format
-
None
-
Storage Engines - Foundations
-
45.262
-
None
-
None
In disagg multi-node runs, leader and follower synchronize through a socket rendezvous (disagg_multi_sync_point) that used a blocking read() with no timeout. Predictable replay disables the 15-minute ops-loop abort guard, and output is redirected to per-node files, so if one process stalls before reaching the sync point the other waits forever and the failure surfaces only as a 2-hour Evergreen idle-timeout with no diagnostics on the task page. This failure mode hid two distinct root causes in WT-18245.
Bound the wait: poll the sync socket once a second, and after 2 minutes dump transaction and cache state via debug_info and abort, mirroring the ops-loop abort guard. Any future stall now fails fast, in minutes, with the state needed to diagnose it — instead of a silent timeout.