Allow `connect()` (again) while the server is not responding

Open
#833 0 comments 0 reactions 1 assignee View on GitHub

@florinutz is already working on this.

Since Sep 18, 2026.

Assessment

This issue has not been assessed yet.

Description

enhancement

Since 2.3.0, connect() contacts the configured servers and raises ConnectionError when none of them answers (#711). For most programs that is an improvement: the failure arrives where the connection is made, not at the first statement.

A test suite that talks to a cluster while nodes are starting or shutting down now fails inside connect(). crate's blackbox tests hit that and crate pinned crate<2.3 to unblock CI (see crate/crate#20233). The same applies to programs that connect while the server is still coming up (e.g. a CI service container).

Proposal: connect(..., probe=False) skips the check at construction. The server version is then resolved when something first reads lowest_server_version, and an unreachable cluster fails at the first statement, as it did before 2.3.0. The default stays probe=True, so nothing changes for callers who want the early failure.

Dominant language
Python
Stars
85
Forks
34
Avg merge
3d 1h
Merged PRs (30d)
4

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from crate/crate-python

All issues in crate/crate-python

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.