You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by GitBox <gi...@apache.org> on 2026/08/25 10:36:10 UTC
[GH] (iotdb-client-rust/fix/pool-timeouts-and-lifecycle): Workflow run "CI" failed!
The GitHub Actions job "CI" on iotdb-client-rust.git/fix/pool-timeouts-and-lifecycle has failed.
Run started by GitHub user CritasWang (triggered by CritasWang).
Head commit for run:
13c8e1d0e3af14646517c0ab27c53d5d36bdcf29 / CritasWang <cr...@outlook.com>
Fix socket timeouts, connection lifecycle and session pool accounting
- Bound every blocking socket read/write after the TCP handshake with a
new socket_timeout (SO_RCVTIMEO/SO_SNDTIMEO via socket2), applied
before the TLS handshake: RPC reads, drop-time closeSession and the
TLS handshake can no longer block forever; SO_KEEPALIVE is enabled.
connect_timeout is now one total budget per endpoint across all
resolved addresses.
- Fail over at the handshake level in Session::open (connect +
openSession + requestStatementId), mirroring reconnect().
- Mark a connection broken on transport-level failures so is_open()
stops lying; pools discard the session instead of handing it out
again, and fetch_results (which cannot be retried) also marks it.
- SessionPool: spend the acquire_timeout budget on growth/hand-out
failures instead of failing instantly, decrement live under the state
lock (no lost Condvar wakeups), wake waiters from close() before the
blocking closeSession calls, and treat acquire_timeout=Duration::MAX
as "wait without deadline" instead of panicking.
- Skip the reconnect pacing sleeps for pooled sessions so a pool slot
is not held for the full reconnect walk.
- Redirect: normalize endpoint matching (case/brackets/loopback),
prefer the newest hint when idle sessions hold conflicting hints
(process-wide insertion seq), make cache TTL/capacity configurable,
and expose TableSessionPool::acquire_for_device.
- Add regression tests using silent/fake listeners for every fix above.
Closes #4, closes #5, closes #6, closes #7, closes #8, closes #9, closes #10.
Report URL: https://github.com/apache/iotdb-client-rust/actions/runs/32833924359
With regards,
GitHub Actions via GitBox