Skip to content

STOR-5489: Retry Durable Object RPC calls - #7430

Open
apeacock1991 wants to merge 1 commit into
apeacock/jsrpc-replay-memory-observationfrom
apeacock/jsrpc-call-retries
Open

apeacock1991 wants to merge 1 commit into
apeacock/jsrpc-replay-memory-observationfrom
apeacock/jsrpc-call-retries

Conversation

@apeacock1991

@apeacock1991 apeacock1991 commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

Depends on #7408.

Summary

  • Retry eligible Durable Object JSRPC calls after disconnects.
  • Commit a call to its current attempt when its result pipeline is used.
  • Require bounded replay-memory reservations before enabling retries.
  • Release retained payloads at native settlement, before JavaScript reentry.
  • Replay property reads while leaving calls with consumed externals observe-only.

The retry-request path is behind DURABLE_OBJECT_RETRIES_JSRPC_RETRY_REQUESTS and still requires both fetch retry gates and the JSRPC observation gate. This does not change the JavaScript API.

@apeacock1991
apeacock1991 requested review from a team as code owners September 18, 2026 11:42
Replay eligible JSRPC calls after disconnects using the shared
actor-call retry state. Pipeline use commits a call to its current
attempt, and replay memory reservations bound retained call plans
before enforcement is enabled.

Release replay payloads when native attempts settle, before delayed
JavaScript reentry. Property reads are replayable, while calls with
consumed externals remain observe-only.
@apeacock1991
apeacock1991 force-pushed the apeacock/jsrpc-call-retries branch from 1bb25c3 to 8ecd7f4 Compare September 18, 2026 11:46
@ask-bonk

ask-bonk Bot commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

LGTM

github run

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.

1 participant