2 months ago
58939f2Issue 1: The startup executor only replayed Publish operations, so every Gc row scheduled after a successful publish was skipped forever. Add a Gc dispatch branch in retry_pending_operations that calls execute_gc with the provider and a dedicated control DB connection. Issue 2: The credential refresh single-flight lock serialized concurrent refreshes but did not collapse them — after acquiring the lock, each waiter re-checked its own stale in-memory secret copy and proceeded to fire a redundant network refresh. Reload the stored credential from disk after acquiring the lock so the waiter picks up the token that the first thread already refreshed and persisted.
Parent8675930