questdb / questdb/c-questdb-client

Improve misleading TLS misconfiguration error messages

Open
#116 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
73
Forks
30
Avg merge
4d 17h
Merged PRs (30d)
8

Description

Overview

When sniffing the protocol version as part of c-questdb-client v.3.0.0, if TLS is misconfigured it's reported as "Could not detect server's line protocol version". While technically correct, this is misleading as it obfuscates the core issue.

These are two specific usability reports on where we can be clearer:

Issue 1 - Connecting to HTTPS server as HTTP

When using latest client (python) if I am sending to a https host but I mistakenly pass http, the error message is misleading

questdb.ingress.IngressError: Could not detect server's line protocol version, settings url: http://localhost:9000/settings, status code: 400 Bad Request.

Issue 2 - Bad credentials

and when https but self signed cert

questdb.ingress.IngressError: Could not detect server's line protocol version, settings url: https://localhost:9000/settings, err: io: invalid peer certificate: Other(OtherError(UnsupportedCertVersion)).

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.

Research direction

Start by tracing the protocol-version sniffing path and the TLS-related error handling described in the issue. Compare the HTTP-to-HTTPS and self-signed-certificate cases, then verify that each reports a clear TLS or configuration problem instead of the generic line-protocol detection message.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
networking
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
40/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.