Skip to content

Correct the checkpoint request timeout note - #738

Merged
benitav merged 4 commits into
mainfrom
connect-timeout
Nov 2, 2026
Merged

benitav merged 4 commits into
mainfrom
connect-timeout

Conversation

@khawarizmus

Copy link
Copy Markdown
Contributor

This PR rewords the checkpoint request timeout note after powersync-ja/powersync-js#1173 was merged. Whether the request times out now depends on the client SDK and its HTTP client, instead of "no timeout".

Fixes #732

Claude code was used to double-check the correctness of the claim across SDKs

@khawarizmus
khawarizmus requested a review from benitav October 30, 2026 05:09
@mintlify

mintlify Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
powersync 🟢 Ready View Preview Nov 2, 2026, 9:37 AM

💡 Tip: Enable Automations to automatically generate PRs for you.

Comment thread client-sdks/checkpoint-requests.mdx Outdated
Creating the request has no timeout of its own, so it can stay suspended while the sync client retries its connection. Cancel the calling task if you need to stop waiting.
While the sync client retries its connection, the call waits without a timeout. Cancel the calling task if you need to stop waiting.

After the request reaches the Service, whether it can time out depends on the client SDK and its HTTP client. If the request times out, `requestCheckpoint()` fails with an error. Call it again to retry.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This generalizes a JS/Node-only change to every platform shown on this page. The source PR (powersync-js#1173) adds connectTimeoutMs only to @powersync/common/shared-internals (covering the JS/Web/React Native/Node/Capacitor SDKs). It doesn't touch the Tauri, Dart, Kotlin, Swift, .NET, or Rust SDKs whose examples appear just above this paragraph, so there's no verified basis for claiming their timeout behavior now "depends on the client SDK and its HTTP client" rather than having none. Either scope this sentence to the SDKs where the change actually landed, or verify (and ideally note) each other platform's underlying HTTP client timeout behavior before asserting it generally.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Except for Dart and Rust SDKs, each SDK has its own timeout, which is why I generalized the claim. I didn't want to make a list, as I think it's not the place for it.

@claude

claude Bot commented Oct 30, 2026

Copy link
Copy Markdown
Contributor

Reviewed the diff against the writing standards. One finding posted inline; no other issues found.

Comment thread client-sdks/checkpoint-requests.mdx Outdated
`requestCheckpoint()` requires that the database is connected or connecting. The device must be online for the request to reach the PowerSync Service. If it is offline or the sync client is reconnecting, the call waits and continues once the Service is reachable.

Creating the request has no timeout of its own, so it can stay suspended while the sync client retries its connection. Cancel the calling task if you need to stop waiting.
While the sync client retries its connection, the call waits without a timeout. Cancel the calling task if you need to stop waiting.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While the sync client retries its connection, the call waits without a timeout. seems like a duplicate of the previous sentence If it is offline or the sync client is reconnecting, the call waits and continues once the Service is reachable.? We can just add Cancel the calling task if you need to stop waiting. to the previous paragraph?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's true. I have changed it and used the word timeout in the first paragraph.

Comment thread client-sdks/checkpoint-requests.mdx Resolved
Co-authored-by: benitav <benitav@users.noreply.github.com>
@benitav
benitav merged commit 08bacce into main Nov 2, 2026
7 checks passed
@benitav
benitav deleted the connect-timeout branch November 2, 2026 09:38

This branch was successfully deployed

1 active deployment
staging — 2d419fde Deployed Nov 2, 2026 by mintlify[bot]
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.

[Divergence] JS SDK adds connectTimeoutMs, which times out checkpoint requests and HTTP sync stream connections (powersync-js #1173)

2 participants