[
https://issues.apache.org/jira/browse/IGNITE-23076?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17899146#comment-17899146
]
Pavel Tupitsyn commented on IGNITE-23076:
-----------------------------------------
Merged to main:
[56614d4e6a140a1a15ce5a49402d2a57e898aa8d|https://github.com/apache/ignite-3/commit/56614d4e6a140a1a15ce5a49402d2a57e898aa8d]
> Start single timeout worker thread for all clients in one JVM
> -------------------------------------------------------------
>
> Key: IGNITE-23076
> URL: https://issues.apache.org/jira/browse/IGNITE-23076
> Project: Ignite
> Issue Type: Improvement
> Components: thin client
> Reporter: Vladislav Pyatkov
> Assignee: Pavel Tupitsyn
> Priority: Major
> Labels: ignite-3
> Fix For: 3.0
>
> Time Spent: 40m
> Remaining Estimate: 0h
>
> h3. Motivation
> Currently, each client starts own timeout worker:
> {code:java}
> this.timeoutWorker = new TimeoutWorker(
> log,
> cfg.getAddress().getHostString() + cfg.getAddress().getPort(),
> "TcpClientChannel-timeout-worker",
> pendingReqs,
> // Client-facing future will fail with a timeout, but internal
> ClientRequestFuture will stay in the map -
> // otherwise we'll fail with "protocol breakdown" error when a late
> response arrives from the server.
> false
> );
> new IgniteThread(timeoutWorker).start();
> {code}
> but in the case where we start several clients on one JVM, the only timeout
> worker would be enough.
> h3. Definition of done
> All clients that were started in one JVM share the timeout worker.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)