[
https://issues.apache.org/jira/browse/IGNITE-20447?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vyacheslav Koptilin updated IGNITE-20447:
-----------------------------------------
Description:
Let's add a new component `failure` to Apache Ignite 3 and add base interfaces
to this component.
*Definition of done:*
- introduced a new module to Ignite 3 codebase
- introduced a new Ignite component - _FailureProcessor _with minimal no-op
implementation. This component is responsible for processing critical errors.
- introduced a new _FailureHandler _interface. An implementation of this
interface represents a concrete strategy for handling errors.
- introduced a new enum _FailureType _that describes a possible type of
failure. The following types can be considered as a starting point:
_CRITICAL_ERROR_, _SYSTEM_WORKER_TERMINATION_, _SYSTEM_WORKER_BLOCKED_,
_SYSTEM_CRITICAL_OPERATION_TIMEOUT_
- introduced a new class _FailureContext _that contains information about
failure type and exception.
*Implemenattion notes:*
All these classes and interfaces should be a part of internal API due to
the end user should not provide a custom implementation of the failure handler,
Apache Ignite should provide a closed list of handlers out of the box.
was:
Let's add a new component `failure` to Apache Ignite 3 and add base interfaces
to this component.
*Definition of done:*
- introduced a new module to Ignite 3 codebase
- introduced a new Ignite component - _FailureProcessor _with minimal no-op
implementation. This component is responsible for processing critical errors.
- introduced a new _FailureHandler _interface. An implementation of this
interface represents a concrete strategy for handling errors.
- introduced a new enum _FailureType _that describes a possible type of
failure. The following types can be considered as a starting point:
_CRITICAL_ERROR_, _SYSTEM_WORKER_TERMINATION_, _SYSTEM_WORKER_BLOCKED_,
_SYSTEM_CRITICAL_OPERATION_TIMEOUT_
- introduced a new class _FailureContext _that contains information about
failure type and exception.
> Introduce a new failure handling component
> ------------------------------------------
>
> Key: IGNITE-20447
> URL: https://issues.apache.org/jira/browse/IGNITE-20447
> Project: Ignite
> Issue Type: Improvement
> Reporter: Vyacheslav Koptilin
> Priority: Major
> Labels: ignite-3
>
> Let's add a new component `failure` to Apache Ignite 3 and add base
> interfaces to this component.
> *Definition of done:*
> - introduced a new module to Ignite 3 codebase
> - introduced a new Ignite component - _FailureProcessor _with minimal no-op
> implementation. This component is responsible for processing critical errors.
> - introduced a new _FailureHandler _interface. An implementation of this
> interface represents a concrete strategy for handling errors.
> - introduced a new enum _FailureType _that describes a possible type of
> failure. The following types can be considered as a starting point:
> _CRITICAL_ERROR_, _SYSTEM_WORKER_TERMINATION_, _SYSTEM_WORKER_BLOCKED_,
> _SYSTEM_CRITICAL_OPERATION_TIMEOUT_
> - introduced a new class _FailureContext _that contains information about
> failure type and exception.
> *Implemenattion notes:*
> All these classes and interfaces should be a part of internal API due to
> the end user should not provide a custom implementation of the failure
> handler, Apache Ignite should provide a closed list of handlers out of the
> box.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)