[jbossts-issues] [JBoss JIRA] (JBTM-3189) Resteasy providers are absent when a thread from the ForkJoinPool is used to cancel the LRA

Michael Musgrove (Jira) issues at jboss.org
Wed Sep 11 10:41:01 EDT 2019


Michael Musgrove created JBTM-3189:
--------------------------------------

             Summary: Resteasy providers are absent when a thread from the ForkJoinPool is used to cancel the LRA
                 Key: JBTM-3189
                 URL: https://issues.jboss.org/browse/JBTM-3189
             Project: JBoss Transaction Manager
          Issue Type: Bug
          Components: LRA
    Affects Versions: 5.9.8.Final
            Reporter: Michael Musgrove
            Assignee: Michael Musgrove
             Fix For: 5.next


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.





--
This message was sent by Atlassian Jira
(v7.13.5#713005)


More information about the jbossts-issues mailing list