-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Layered Tables
-
None
-
Storage Engines - Foundations
-
3.635
-
None
-
None
The __clayered_ignore_missing_stable check can tolerate a missing stable table when it should not. The role-change part of the check is needed for the race with reconfigure(role="follower"), which clears the created-during-step-down flag before publishing the role. The step-down-timestamp part is not needed for that race and can hide a genuinely missing stable table: the tolerated open failure leaves the cursor with no constituents at all, and iteration then asserts in diagnostic builds and dereferences NULL in release builds.
This is not urgent: reaching it requires another defect that makes a leader-era table lose its stable constituent.
Proposed fix: rework __clayered_ignore_missing_stable to check only for the role change.