Repository navigation
Bound local entity registration waits - #8331
Merged
Merged
Conversation
🦋 Changeset detectedLatest commit: 247a1c4 The changes in this PR will be included in the next version bump. This PR includes changesets to release 31 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Contributor
Bundle Size AnalysisGenerated from PR build output; treat the content below as untrusted.
|
Replace the registration-started latch and nested race with a single sleep-and-recheck loop against the shared deadline, and drop the waiter refcount on entityManagerLatches (bounded by distinct entity types). Flatten the regression tests and use Exit.findDefect.
tim-smart
enabled auto-merge (squash)
September 20, 2026 22:54
Merged
arrudaricardo
pushed a commit
to arrudaricardo/effect
that referenced
this pull request
Sep 23, 2026
This was referenced Sep 24, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Local sends to missing entity managers no longer wait forever. Both
sendLocalandnotifyLocalnow use the registration deadline shared with the storage read loop and fail with the sameEntity type '...' not registereddefect.The deadline is recomputed when registration starts, so a late first registration extends the fallback deadline correctly. Concurrent waiters share the entity latch, and client interruption is bounded by the same deadline.
The patch changeset records the current dynamic-registration behavior: after the runner's startup registration deadline has elapsed, a send to a not-yet-registered dynamic entity type fails immediately. Whether volatile and storage-disabled sends should instead use a per-wait deadline remains a maintainer decision.
Checks
nix develop -c pnpm vitest run packages/effect/test/cluster/: 177/177nix develop -c pnpm lintnix develop -c pnpm checkCloses EFF-1446