-
Task
-
Resolution: Unresolved
-
Major
-
None
-
5.11.0.Final
-
Undefined
There is a quarkus issue requesting distributed JTA style transactions. To support this work some facilitating changes to the Short Running Action implementation are required:
- Update the SRA module to use quarkus instead of thorntail.
- The `delayCommit` attribute of the `@SRA` annotation is ignored by the ServerSRAFilter after request interceptor.
- Migrate the SRA demo package (io.narayana.sra.demo) over to the [quickstart repo|https://github.com/jbosstm/quickstart].
- In the demo code, split up each service (hotel, flight and trip) so that they each run in their own JVMs, and then modify the trip service so that it communicates with the hotel and flight services using REST calls (the ServerSRAFilter provider class should already automatically propagate the transaction context on each service invocation). This would be a second quickstart (step one shows them all in the same JVM and step 2 will show how to distribute the services - in the microservices jargon this is analogous to what used to be called "decomposing the monolith"). Step 1 could also be spit into two quickstarts, the first would show how to start and end a transaction in the resource method (this is the default behaviour of the `@SRA` annotation). The second would show how to start a transaction on entry to the method with `delayCommit=true` and then end the transaction in another resource method. So that would be three quickstarts in all.
- Move the SRA annotation code into the [rest-at module|https://github.com/jbosstm/narayana/tree/master/rts/at].
- The delayCommit attribute of the SRA annotation was originally modelled on the end attribute of the LRA annotation but the semantics of this LRA attribute was subsequently changed. SRA needs to align with LRA as closely as makes sense to facilitate code maintainability. This sub task is for changing the semantics of delayCommit to match the attribute org.eclipse.microprofile.lra.annotation.ws.rs.LRA#end().
These tasks are each involved enough to warrant moving to sub tasks with their own JIRA numbers.
- is related to
-
JBTM-3463 split up each service (hotel, flight and trip) so that they each run in their own JVMs,
- Closed
-
JBTM-3489 REST-AT annotation demo ends in the wrong state
- Closed
-
JBTM-3599 Test that SRA annotations work with two participants
- Closed
-
JBTM-3455 Implementing Swagger in SRA module of rts
- Open
- relates to
-
JBTM-3460 The delayCommit attribute of the SRA annotation is ignored
- Closed
-
JBTM-3461 Update the SRA module to use quarkus instead of thorntail.
- Closed
-
JBTM-3462 Migrate the SRA demo package (io.narayana.sra.demo) over to the [quickstart repo|https://github.com/jbosstm/quickstart].
- Closed
-
JBTM-3464 Move the SRA annotation code into the rest-at module
- Closed
-
JBTM-3491 Checkstyle Implementation in SRA module
- Closed
-
JBTM-3489 REST-AT annotation demo ends in the wrong state
- Closed
-
JBTM-3477 Change the semantics of the annotation attribute SRA#delayCommit
- Closed
-
JBTM-3455 Implementing Swagger in SRA module of rts
- Open