[
https://issues.jboss.org/browse/JBTM-3163?page=com.atlassian.jira.plugin....
]
Martin Stefanko edited comment on JBTM-3163 at 7/29/19 3:53 AM:
----------------------------------------------------------------
In
[
LRAService|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-co...]
we have currently in the method
[
endLRA()|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coor...]
calls:
* on line
[
241|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinat...]
- transaction.end()
which calls ->
[
Transaction#doEnd|https://github.com/jbosstm/narayana/blob/master/rts/lra...]
which on line
[
444|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinat...]
calls
[
LRAService#finished|https://github.com/jbosstm/narayana/blob/master/rts/l...]
* on line
[
250|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinat...]
- call to
[
LRAService#finished|https://github.com/jbosstm/narayana/blob/master/rts/l...]
again
[
LRAService#finished|https://github.com/jbosstm/narayana/blob/master/rts/l...]
makes the final AfterLRA calls on line
[
152|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinat...]
was (Author: mstefank):
In
[
LRAService|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-co...]
we have currently in the method
[
endLRA()|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coor...]
calls:
* on line
[
241|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinat...]
- transaction.end()
which calls ->
[`Transaction#doEnd`|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinator/src/main/java/io/narayana/lra/coordinator/domain/model/Transaction.java#L351]
which on line
[
444|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinat...]
calls
[`LRAService#finished`|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinator/src/main/java/io/narayana/lra/coordinator/domain/service/LRAService.java#L145]
* on line
[
250|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinat...]
- call to
[`LRAService#finished`|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinator/src/main/java/io/narayana/lra/coordinator/domain/service/LRAService.java#L145]
again
[`LRAService#finished`|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinator/src/main/java/io/narayana/lra/coordinator/domain/service/LRAService.java#L145]
makes the final AfterLRA calls on line
[
152|https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinat...]
AfterLRA notifications are delivered twice
------------------------------------------
Key: JBTM-3163
URL:
https://issues.jboss.org/browse/JBTM-3163
Project: JBoss Transaction Manager
Issue Type: Task
Components: LRA
Affects Versions: 5.9.5.Final
Reporter: Martin Stefanko
Assignee: Martin Stefanko
Priority: Major
Original Estimate: 1 hour
Time Spent: 1 hour
Remaining Estimate: 0 minutes
@AfterLRA notifications recently introduced in the specification are being delivered
twice when the LRA is finished.
There is actually a TCK test testing this for non JAX-RS participant so this is blocking
[PR
1450|https://github.com/jbosstm/narayana/pull/1450].
The failing TCK test `TckParticipantTests#validWebApplicationExceptionReturnedTest`
asserts now that `@AfterLRA` method is called once after the LRA is finished -
https://github.com/eclipse/microprofile-lra/blob/master/tck/src/main/java....
This means that the specification prohibits that AfterLRA method is called more than once
for one LRA.
This isn't failing current TCK as the assert is present in the non-JAX-RS TCK ([PR
1450|https://github.com/jbosstm/narayana/pull/1450])
--
This message was sent by Atlassian Jira
(v7.12.1#712002)