]
Michael Musgrove closed JBTM-3156.
----------------------------------
Release Notes Text: The coordinator is a REST resource and it expects compensators to
return 202 Accepted if the resource update is still in progress.
Resolution: Rejected
LRA does not respect all participant immediate state indications
----------------------------------------------------------------
Key: JBTM-3156
URL:
https://issues.jboss.org/browse/JBTM-3156
Project: JBoss Transaction Manager
Issue Type: Bug
Components: LRA
Affects Versions: 5.9.5.Final
Reporter: Martin Stefanko
Assignee: Martin Stefanko
Priority: Major
The specification states at
https://github.com/eclipse/microprofile-lra/blob/master/spec/src/main/asc...:
{noformat}
If the resource cannot perform a compensation activity immediately the @Compensate method
SHOULD do one or more of the following:
return ParticipantStatus.Compensating
return a 202 Accepted HTTP status code
mark the method as a JAX-RS asynchronous method (using the
javax.ws.rs.container.Suspended annotation).
{noformat}
However, Narayana respects only the ACCEPTED status code:
https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinator/s...
The implementation should also cover two other variants.