3 Replies Latest reply on Aug 19, 2019 10:41 AM by ochaloup

    Changing node-id with reload required in WildFly during boot time

    ochaloup

      Hi all,

       

      I would like to ask for feedback about the way of changing Narayana node-id in WFLY. Recently there was created an issue regarding this

      [WFLY-12317] Using JTA transaction's node_name attribute is set to an old value after node-identifier is changed.

       

      The reason is that the model node defines the changing of the node-id is fine with :reload operation - WildFly 16.0 Model Reference

       

      That was working fine up to the time I did changes for timeout processing for issue [WFLY-11811] Default transaction timeout could be wrongly configured because of the TM initiation race condition. The initialization order was changed during WFLY boot time and the node-id is needed with restart JVM (wildfly/TransactionSubsystemRootResourceDefinition.java at master · wildfly/wildfly · GitHub ).

       

      The question is if the reload required for the node-id should be preserved or the JVM restart should be required from now.

      For the option of the reload required the would be to access `TxControl` and define the nodeIdentifier during the transaction service star - that's called during restart (like this [WFLY-12317] Using JTA transaction's node_name attribute is set to an old value after node-identifier is changed).

      As Mike refers in his comment [WFLY-12317] Using JTA transaction's node_name attribute is set to an old value after node-identifier is changed, the safety should be considered.

       

      The CoreEnvironmentService already defines the node-id during startup (wildfly/CoreEnvironmentService.java at 17.0.1.Final · wildfly/wildfly · GitHub ). But the code does not approach directly to the TxControl class. It sounds that the reload-required for the node-id was intentional.

       

      Would there be some ideas on this?

       

      Thanks

      Ondra