Skip to content

fix: deduplicate concurrent signer credential refreshes - #842

Draft
Xuanwo wants to merge 2 commits into
mainfrom
xuanwo/signer-refresh-singleflight
Draft

fix: deduplicate concurrent signer credential refreshes#842
Xuanwo wants to merge 2 commits into
mainfrom
xuanwo/signer-refresh-singleflight

Conversation

@Xuanwo

@Xuanwo Xuanwo commented Aug 12, 2026

Copy link
Copy Markdown
Member

Concurrent Signer calls can observe the same empty or stale credential cache and invoke the provider in parallel, causing issuance bursts at cold starts and refresh boundaries.

This serializes credential refresh per shared cache with a runtime-agnostic async mutex. Callers waiting on a successful refresh reuse the cached credential. A failed or cancelled refresh is not cached, so the next waiting or later caller retries. Request signing runs after releasing the mutex, preserving concurrent signing, exact operation-validity checks, atomic request mutation, and the existing cache-sharing rules.

Fixes #837

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Deduplicate concurrent credential refreshes in Signer

1 participant