Skip to content

docs(go): document client shutdown and store-and-forward gaps - #600

Open
mtopolnik wants to merge 3 commits into
mainfrom
docs/go-client-sf-shutdown-gaps
Open

mtopolnik wants to merge 3 commits into
mainfrom
docs/go-client-sf-shutdown-gaps

Conversation

@mtopolnik

Copy link
Copy Markdown
Contributor

Fills gaps in the Go client documentation around shutdown, retries, and store-and-forward, and corrects several statements that did not match the client.

Changes

  • Go client page (connect/clients/go.md):
    • New Shutting down section: closing the QuestDB handle and the cleanup errors Close can return.
    • How to retry after ErrBackpressureTimeout or ErrSfDurability without sending rows twice (When rows can't be queued).
    • A borrowed sender's Close can drop rows.
    • Symbol limits, NULL versus empty arrays.
    • What survives a crash on each platform, the filesystem sf_dir needs, and quarantined slots.
    • Callbacks must not close the client or write through it.
    • Corrections: the drainer listener option is WithQuestDBBackgroundDrainerListener; a query session must not be closed from another goroutine while its results are being read; the buffer keys require sf_dir; when a repeatedly rejected frame turns terminal.
  • Connect string reference: adds the Go-only query keys server_info_timeout_ms and replay_exec (with a note that other clients reject them), and a note listing the store-and-forward keys the Go client accepts only with sf_dir.
  • Store-and-forward operating and tuning: the Go client never falls back to ftruncate; where space reservation isn't supported, creating a sender fails with ErrSfDurability.
  • Changelog: entries for the above.

Validation

  • git diff --check is clean.
  • Checked that every new internal link points to an existing heading anchor.
  • yarn build was not run locally; the preview build covers it.

🤖 Generated with Claude Code

mtopolnik and others added 2 commits October 23, 2026 16:52
Covers Close errors, safe retries, quarantined slots, crash durability, and Go-only connect keys. Corrects the drainer listener name and sf_dir requirements.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts:
#	documentation/changelog.mdx
@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

🚀 Build success!

Latest successful preview: https://preview-600--questdb-documentation.netlify.app/docs/

Commit SHA: f59ff89

📦 Build generates a preview & updates the link on each commit.

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