Skip to content

[To dev/1.3] [Bugfix] Reclaim RPC buffers by evicting idle clients (#18853) - #18882

Merged
jt2594838 merged 1 commit into
apache:dev/1.3from
Caideyipi:backport-18853-dev-1.3
Oct 15, 2026
Merged

jt2594838 merged 1 commit into
apache:dev/1.3from
Caideyipi:backport-18853-dev-1.3

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Description

Backport #18853 (commit 1b290ae) to dev/1.3.

The default eviction sweep checks only three idle clients, which can retain expired connections and their RPC buffers for hours in large pools. Check all idle clients in each sweep and reduce the default eviction interval from one minute to 30 seconds.

dev/1.3 does not have the RPC buffer memory accounting APIs used by the original tests. Adapt the regression tests to its existing transport APIs, covering eviction across nodes, background eviction, preservation of borrowed and unexpired clients, and closure of both ends of a connection with compression enabled and disabled.

Validation

  • mvn spotless:apply -pl iotdb-core/node-commons
  • mvn "-Ddevelocity.off=true" -pl iotdb-core/node-commons -am "-Dtest=ClientPoolIdleEvictionTest" "-Dsurefire.failIfNoSpecifiedTests=false" test — all 21 reactor modules succeeded; 8 tests passed, with no failures or skips.
  • git diff --check

* [Bugfix] Reclaim idle RPC buffers when the shared pool is exhausted

* [Bugfix] Evict idle RPC clients to release buffers

(cherry picked from commit 1b290ae)
@jt2594838
jt2594838 merged commit 570aafa into apache:dev/1.3 Oct 15, 2026
15 of 16 checks passed
@jt2594838
jt2594838 deleted the backport-18853-dev-1.3 branch October 15, 2026 06:12
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.

2 participants