Use the same connection string key for the same option on every transport

Open
#4,210 2 comments 0 reactions 1 assignee View on GitHub

@FergusMok is already working on this.

Since Sep 18, 2026.

Assessment

This issue has not been assessed yet.

Description

config enhancement rust
Description

Three connection string options have a different key on QUIC than on TCP and WebSocket. Unknown keys are errors, so using another transport's key name makes the connection string fail.

Option TCP QUIC WebSocket
Reconnection attempts reconnection_retries reconnection_max_retries reconnection_retries
Reconnection cooldown reestablish_after reconnection_reestablish_after reestablish_after
Certificate validation none validate_certificate tls_validate_certificate

The parsers are the *_connection_string_options.rs files under core/common/src/types/configuration/.

Affected area / component

Rust SDK, Configuration

Proposed solution

Use one key per option across all transports, and accept the old keys as deprecated aliases for a release. The client builders already use one name for each across all three transports: with_reconnection_max_retries, with_reestablish_after, and with_tls_validate_certificate on TCP and WebSocket. Matching those gives reconnection_max_retries, reestablish_after and tls_validate_certificate.

Alternatives considered

Rename without aliases in the next release. Existing connection strings would then fail until updated.

Contribution
  • I'm willing to submit a pull request to implement this feature
Good first issue
  • I think this could be a good first issue for a new contributor
Dominant language
Rust
Stars
4.9k
Forks
442
Avg merge
2d 23m
Merged PRs (30d)
153

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 apache/iggy

All issues in apache/iggy

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.