Repository navigation
computer: Leave concurrent JavaScript executions to the platform - #189
Open
mattzcarey wants to merge 1 commit into
Open
mattzcarey wants to merge 1 commit into
mattzcarey wants to merge 1 commit into
Conversation
🦋 Changeset detectedLatest commit: 36a4490 The changes in this PR will be included in the next version bump. This PR includes changesets to release 4 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 |
commit: |
mattzcarey
force-pushed
the
feat/native-rpc-modules
branch
from
October 6, 2026 17:54
2040d21 to
c091b72
Compare
mattzcarey
force-pushed
the
feat/js-no-execution-cap
branch
2 times, most recently
from
October 6, 2026 17:56
20d9da9 to
8818bf5
Compare
mattzcarey
force-pushed
the
feat/native-rpc-modules
branch
from
October 6, 2026 17:56
c091b72 to
3829d7b
Compare
mattzcarey
force-pushed
the
feat/js-no-execution-cap
branch
from
October 6, 2026 18:08
8818bf5 to
5771f53
Compare
mattzcarey
force-pushed
the
feat/native-rpc-modules
branch
from
October 6, 2026 21:22
f17a76d to
039f65c
Compare
mattzcarey
force-pushed
the
feat/js-no-execution-cap
branch
from
October 6, 2026 21:22
5771f53 to
04f0ed4
Compare
mattzcarey
force-pushed
the
feat/native-rpc-modules
branch
from
October 6, 2026 21:37
039f65c to
08ef2ea
Compare
mattzcarey
force-pushed
the
feat/js-no-execution-cap
branch
from
October 6, 2026 21:37
04f0ed4 to
19aed68
Compare
WorkerJavaScriptBackend admitted up to 24 executions at once by default. The platform allows 10 concurrent Dynamic Workers per request, so runs 11 through 24 were admitted and then failed with the platform's error anyway, while the backend's own ceiling only added an option and a counter to keep in step. The cap and maxConcurrentExecutions are gone. Executions start until the platform refuses one, and that refusal is the execution's error. The rlm examples drop the option. Starts already in progress still hold close() until they finish, and reusing a running execution id still fails with EEXEC_BUSY.
mattzcarey
force-pushed
the
feat/js-no-execution-cap
branch
from
October 6, 2026 22:59
19aed68 to
36a4490
Compare
mattzcarey
force-pushed
the
feat/native-rpc-modules
branch
from
October 6, 2026 22:59
08ef2ea to
2aa11a6
Compare
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.
Stacked on #183.
WorkerJavaScriptBackendadmitted up to 24 executions at once by default (maxConcurrentExecutions). The platform allows 10 concurrent Dynamic Workers per request, so on a deployed Worker, runs 11 through 24 were admitted and then failed with a platform error:The backend's ceiling never protected anything the platform didn't already enforce. It only added an option, a counter, and a second, different error for the same condition.
This PR removes the cap and the
maxConcurrentExecutionsoption. Executions start until the platform refuses one, and that refusal becomes the execution's error. Two behaviors stay: starts already in progress still holdclose()until they finish, and reusing a running execution id still fails withEEXEC_BUSY.The
rlmexamples dropmaxConcurrentExecutions: 1, anddocs/17_isolate_javascript.mdsays the platform sets the limit. The test that checked the old ceiling is replaced by one that starts 30 executions at once and checks all of them run.