-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Engines
-
689.161
-
None
-
None
Summary
When disagg.key_provider=1, {}disagg_begin_checkpoint _calls }}{{_wti_disagg_load_crypt_key with empty metadata on every checkpoint. This call belongs only at startup when there is no prior checkpoint to pick up.
Root Cause
{}wti_disagg_load_crypt_key _with empty metadata is the "we have nothing persisted" bootstrap signal. When a checkpoint _is picked up, the pickup flow already calls __wti_disagg_load_crypt_key with real metadata — the empty-metadata call is both unnecessary and wrong in that path.
Fix
Remove the empty load_crypt_key call from {}disagg_begin_checkpoint _and place it in the startup path in }}{{{}wti_disagg_conn_config, gated on }}{{_wti_layered_get_disagg_checkpoint returning WT_NOTFOUND.