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

Resteasy providers are absent when a thread from the ForkJoinPool is used to cancel the LRA

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Blocker
    • Resolution: Done
    • 5.9.8.Final
    • 5.11.0.Final
    • LRA
    • None

    Description

      When an LRA is cancelled from a timer the cancellation is performed by a thread from the ForkJoinPool. None of the Resteasy JAX-RS providers are available on this thread. Outgoing JAX-RS calls made from this thread will then fail.

      Since the LRA coordinator only uses REST calls it would be better to use something like java.net.HttpURLConnection or wait for java.net.http.HttpClient which is in JDK 11.

      But as an interim fix I would suggest that the timeout handler sets the status to Cancelling and then when the LRA is later closed we check whether the timer triggered and cancel the LRA.

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: