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

Local LRA lookup should just use the Uid part of the LRA

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Done
    • 5.10.0.Final
    • 5.10.1.Final
    • LRA
    • None

    Description

      The LRA implementation identifies LRA's by their full JAX-RS resource path (aka URI). [Remark we use the full resource path in order to determine which host owns the LRA]. But when these URI's are calculated sometimes the base URI ends up as localhost and other times as 127.0.0.1 (or :1). The code in the coordinator that wants to know if it owns an LRA should avoid checking the whole path and instead just rely on the Uid part of the resource path (com.arjuna.ats.arjuna.common.Uid). This is safe since the URI is globally unique. Note that this technique only works for LRA ids created by narayana which is fine because the code that does the lookup is only interested in whether the local coordinator created the LRA (tangentially related but it is also noteworthy that we are not targeting interoperability in LRA version 1.0

      The particular code that does the lookup is in LRAService#getTransaction().

      Attachments

        Activity

          People

            rhn-engineering-mmusgrov Michael Musgrove
            rhn-engineering-mmusgrov Michael Musgrove
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: