[
https://issues.apache.org/jira/browse/IGNITE-23075?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Denis Chudov updated IGNITE-23075:
----------------------------------
Description:
h3. Motivation
For the majority of the cluster transaction operation, we use a Timeout worker.
It is a single thread that completes futures with a timeout exception. But if
the thread stops (due to an unhandled exception) no more operations can time
out.
h3. Definition of done
The falure processor has to be called on the catch block of the timeout worker.
{code:java}
} catch (Throwable t) {
failureProcessor.process(new FailureContext(SYSTEM_WORKER_TERMINATION, t));
throw new IgniteInternalException(t);
}{code}
*Implementation notes*
It would be also nice to add tests for timeout worker.
was:
h3. Motivation
For the majority of the cluster transaction operation, we use a Timeout worker.
It is a single thread that completes futures with a timeout exception. But if
the thread stops (due to an unhandled exception) no more operations can time
out.
h3. Definition of done
The falure processor has to be called on the catch block of the timeout worker.
{code:java}
} catch (Throwable t) {
failureProcessor.process(new FailureContext(SYSTEM_WORKER_TERMINATION, t));
throw new IgniteInternalException(t);
}
{code}
> Call failure processor during a timeout worker crash
> ----------------------------------------------------
>
> Key: IGNITE-23075
> URL: https://issues.apache.org/jira/browse/IGNITE-23075
> Project: Ignite
> Issue Type: Improvement
> Reporter: Vladislav Pyatkov
> Priority: Major
> Labels: ignite-3
>
> h3. Motivation
> For the majority of the cluster transaction operation, we use a Timeout
> worker. It is a single thread that completes futures with a timeout
> exception. But if the thread stops (due to an unhandled exception) no more
> operations can time out.
> h3. Definition of done
> The falure processor has to be called on the catch block of the timeout
> worker.
> {code:java}
> } catch (Throwable t) {
> failureProcessor.process(new FailureContext(SYSTEM_WORKER_TERMINATION,
> t));
>
> throw new IgniteInternalException(t);
> }{code}
> *Implementation notes*
> It would be also nice to add tests for timeout worker.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)