Repository navigation
Document that D1 binding has no per-call timeout option - #34310
neelakolkar-cf merged 2 commits into
Conversation
AI Review✅ Reviewed 👉 Fix in your agent 👈Fix the following review findings in PR #34310 (https://github.com/cloudflare/cloudflare-docs/pull/34310).
Before making changes, review each finding and present a brief summary table:
- For each finding, state whether you agree, disagree, or need clarification.
- If you disagree, explain why.
- If you need clarification before deciding, ask those questions.
- Then share your plan for which issues to tackle and in what order.
After triaging, follow this order:
1. Post a comment on this PR for any findings you are skipping, with the finding ID and your reasoning.
2. Then commit the fixes for the legitimate findings.
The comment must come before the commit because the next review reads PR comments.
## Style Guide
- S-130f42ba | src/content/docs/d1/observability/debug-d1.mdx:126 | Use `refer to` instead of `see` before a link
The links rule requires `see [link]` phrasing to be replaced with `refer to [link]`. This line uses `see [Workers limits](/workers/platform/limits/)` before the internal link.Style Guide
Commands
|
c7e913d to
211d172
Compare
| | `D1 DB exceeded its CPU time limit and was reset.` | A query is taking up a lot of CPU time (e.g. scanning over 9 GB table, or attempting a large import/export). | App action: Split the query into smaller shards. | | ||
| | `D1 DB reset because its code was updated.` | Cloudflare has updated the code for D1 (or the underlying Durable Object), and the Durable Object which contains the D1 database is restarting. | Re | ||
| [...truncated] |
There was a problem hiding this comment.
This is broken. I don't expect that you wanted to delete the entire table add ...truncated here right?
Same for the sections below that are deleted.
211d172 to
776bf97
Compare
|
Hi @lambrospetrou — you're right and I apologise for that. The root cause: previous commits were generated by encoding file content via the GitHub Contents API, which truncated files above ~8KB before base64-encoding. For The branch has been force-pushed with a clean commit generated directly from Happy to have you re-review when you get a chance. |
776bf97 to
4f045cc
Compare
|
Hi @lambrospetrou — correct, that was a truncation bug. The branch has been force-pushed with a clean commit that only adds the new Sorry for the noise — the previous commits were generated via the GitHub Contents API which silently truncates files above ~8KB. That path has been replaced with a git-based approach that verifies file integrity before pushing. |
|
@lambrospetrou Is the work on this PR done - LGTM? |
Summary
Addresses the documentation gap surfaced in support case 02374690 (DEE-3968).
None of the D1 Worker API, D1 limits, Debug D1, or Workers limits pages explains whether a D1 binding call has a timeout, what happens when the database is unreachable, or how to bound the wait. Customers assume an error should surface automatically and escalate to Engineering.
Changes
src/content/docs/d1/observability/debug-d1.mdxAdded a new "D1 binding timeout behavior" section covering:
run(),all(),first(), andbatch()accept no timeout option orAbortSignal— there is no per-call timeout in the D1 binding client.Promise.racepattern to bound the wait, with an explicit caution: it does not cancel the query — a timed-out write may still commit, so outcome must be confirmed before retrying.Testing
Documentation-only change.