Skip to content
This repository was archived by the owner on Feb 12, 2026. It is now read-only.

fix(gobrr): close rate limiter semaphore on shutdown#45

Merged
danyalprout merged 1 commit intodanyal/p2p-testerfrom
fix/rate-limiter-deadlock
Feb 11, 2026
Merged

fix(gobrr): close rate limiter semaphore on shutdown#45
danyalprout merged 1 commit intodanyal/p2p-testerfrom
fix/rate-limiter-deadlock

Conversation

@niran
Copy link

@niran niran commented Feb 11, 2026

Summary

  • After shutdown, the replenisher stops adding permits but signers are blocked forever in acquire_rate_permit().await
  • Call limiter.close() so pending acquire_owned() calls return AcquireError, which the signer already handles gracefully
  • Without this, all signers with target_tps configured deadlock on shutdown

After shutdown, the replenisher stops adding permits but signers are
blocked forever in acquire_rate_permit().await. Call limiter.close() so
pending acquire_owned() calls return AcquireError, which the signer
already handles gracefully by breaking out of its loop.

Without this, all signers with target_tps configured deadlock on
shutdown, waiting for permits that will never come.
@danyalprout danyalprout merged commit 7497143 into danyal/p2p-tester Feb 11, 2026
10 of 12 checks passed
mw2000 pushed a commit that referenced this pull request Feb 12, 2026
Add TransactionResult and MeterBundleResponse types to support bundle execution metering with resource tracking.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants