Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-14878

Transaction subsystem attribute enable-tsm-status requires restart of JVM to be activated

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Minor Minor
    • 24.0.0.Final
    • 24.0.0.Beta1
    • Transactions
    • None
    • Hide

      Set the enable-tsm-status to true and reload.

      /subsystem=transactions:write-attribute(name=enable-tsm-status,value=true)
      :reload
      

      Try to connect with telnet to port

      telnet localhost 4713
      Trying ::1...
      telnet: connect to address ::1: Connection refused
      Trying 127.0.0.1...
      telnet: connect to address 127.0.0.1: Connection refused
      

      Try to restart

      :shutdown(restart=true)
      

      Connect with telnet

      telnet localhost 4713
      Trying ::1...
      telnet: connect to address ::1: Connection refused
      Trying 127.0.0.1...
      Connected to localhost.
      Escape character is '^]'.
      20152a11
      OK
      
      ^]
      
      Show
      Set the enable-tsm-status to true and reload. /subsystem=transactions:write-attribute(name=enable-tsm-status,value= true ) :reload Try to connect with telnet to port telnet localhost 4713 Trying ::1... telnet: connect to address ::1: Connection refused Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused Try to restart :shutdown(restart= true ) Connect with telnet telnet localhost 4713 Trying ::1... telnet: connect to address ::1: Connection refused Trying 127.0.0.1... Connected to localhost. Escape character is '^]' . 20152a11 OK ^]
    • Undefined

      The transaction subsystem attribute enable-tsm-status is wrongly defined to require only :reload of the application server (https://github.com/wildfly/wildfly/blob/23.0.2.Final/transactions/src/main/java/org/jboss/as/txn/subsystem/TransactionSubsystemRootResourceDefinition.java#L172 -> RESTART_ALL_SERVICES)
      but for the Narayana status manager service to open the socket, and listens to connetions there is needed the JVM restart.

      The enable status manager is controled by static variable in Narayana https://github.com/jbosstm/narayana/blob/0e75da61eb3feb5108e590935c3b97a6d05b1d47/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/TxControl.java#L257 and it's value has no other setter method than setting the value at the JVM start (more precisely when the TXControl class is class loaded).

              ochaloup@redhat.com Ondrej Chaloupka (Inactive)
              ochaloup@redhat.com Ondrej Chaloupka (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: