Integrate MicroProfile Fault Tolerance 2.1

In  microprofile

Overview

The support for Eclipse MicroProfile (MP) Fault Tolerance (FT) spec version 2.0 was already integrated for all applications deployed in WildFly with WFLY-12590. This describes the continuation of this effort updating the spec to version 2.1 following the Eclipse MicroProfile 3.3 release.

This task incorporates upgrading SmallRye Fault Tolerance implementation to 4.1.0 (or newer) and the spec to 2.1 jars and TCK, removing legacy libraries and dependencies such as hystrix, commons-config, hdrhistogram, etc.

For changes in the 2.1 spec see the spec.

For convenience of interested parties some of the following parts are copied over from previous proposal and updated.

Issue Metadata

Dev Contacts

QE Contacts

  • Tomas Terem (just to note, the 2.0 spec was QE-ed by Miroslav Novak)

Testing By

[ ] Engineering

[x] QE

Affected Projects or Components

Note this no longer requires external dependency.

Other Interested Projects

Not interested in our integration per se, but projects that have already integrated MP FT:

Requirements

  • Update support to Eclipse MicroProfile Fault Tolerance version 2.1 for all applications deployed in WildFly.

  • Remove "restriction" imposed by hystrix configuration being singleton - which was essentially just a warning log message - when multiple deployments are deployed and configuring hystrix.

Nice-to-Have Requirements

N/A

Non-Requirements

N/A

Implementation Plan

  • Update smallrye-fault-tolerance and microprofile-fault-tolerance-api dependencies.

  • Remove no longer needed dependencies/licences/modules/etc.

Test Plan

  • The smallrye-fault-tolerance component is passing the MicroProfile Fault Tolerance 2.1 TCK during its release process.

Community Documentation

The feature documentation in WildFly Administration Guide in a new MicroProfile Fault Tolerance section will be updated.