Uploaded image for project: 'JBoss Transaction Manager'
  1. JBoss Transaction Manager
  2. JBTM-3082

Coordinator reports LRA as compensating when the participant is not able to finish complete method invocation immediately

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 5.9.7.Final
    • 5.9.0.Final
    • LRA
    • None
      1. URL lraId = client.startLRA(...);
      2. client.joinLRA(...);
      3. client.completeLRA(lraId);
      4. client.getStatus(lraId);

    Description

      If the participant cannot finish the complete method invocation immediately and thus returns 202 ACCEPTED return code and then somebody calls get status of the finishing LRA, the coordinator reports it as CompensatorStatus.Compensating instead of CompensatorStatus.Completing.

      The status of the finishing LRA is changed to Compensating here [1] possibly because of this line [2] as heuristicList is not empty.

      [1] https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinator/src/main/java/io/narayana/lra/coordinator/domain/model/Transaction.java#L404
      [2] https://github.com/jbosstm/narayana/blob/master/rts/lra/lra-coordinator/src/main/java/io/narayana/lra/coordinator/domain/model/LRARecord.java#L387

      Attachments

        Activity

          People

            rhn-engineering-mmusgrov Michael Musgrove
            mstefank Martin Stefanko
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: