fix(recovery): retain interrupted checkpoint sidecars (#3463)

Retain and validate both checkpoint lock sidecars so cleanup and native replay use the same complete recovery family.
This commit is contained in:
Gergő Magyar 2026-10-04 07:37:34 +00:00 • committed by GitHub
parent c3437c2bf7
commit c191d8833c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -17,7 +17,15 @@ import { INDEX_METADATA_FILE, LEGACY_METADATA_FILE } from './storage-constants.j
const STAGING_FILENAME =
/^lbug\.staging\.[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/;
const FAMILY_SUFFIXES = ['', '.wal', '.shadow', '.wal.checkpoint', '.lock'] as const;
export const FAMILY_SUFFIXES = [
'',
'.wal',
'.shadow',
'.wal.checkpoint',
'.lock',
'.checkpoint.intent.lock',
'.checkpoint.apply.lock',
] as const;
export interface ResolvedEmbeddingRecovery extends EmbeddingRecoveryReference {
dbPath: string;