-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Disagg CI-blocker
-
None
-
Storage Engines - Foundations
-
SE Foundations - 2026-02-13
-
5
-
1
We have identified a race condition in __wti_conn_dhandle_outdated.
session->dhandle can be freed or cleared by a concurrent thread between the time it is found using __wt_conn_dhandle_find and the time it is acquired or accessed.
This can lead to a error when the dhandle is accessed.
Steps to Reproduce
- Run test/format in a multi-node configuration with disaggregated storage enabled.
- Modify src/conn/conn_dhandle.c, inside _wti_conn_dhandle_outdated, to insert a sleep after _wt_conn_dhandle_find and before WT_DHANDLE_ACQUIRE, to widen the race window.
- Run the test.
How to run multi node (test/format)
cd build/test/format ./format_disagg_multi.sh