Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-25349

(7.4.z) WFCORE-6434 - Managed servers could ignore restart/reload required operations when HC reconnects to the domain

XMLWordPrintable

    • False
    • None
    • False
    • +
    • Hide

      In a domain with a single secondary host with a single managed server:

      1. Deploy an application that takes time to start up, which will delay the server process to transition from starting to running
      2. Stop and start the managed server. The server process state will be starting until the applications have been deployed.
      3. Reload the DC in admin-only mode, the secondary Host Controller will lose the connection with the DC. The managed server is unaffected and continues starting.
      4. Change the default value of java.net.preferIPv4Stack system property.
      5. Reload the DC in normal mode, the HC will get connected to the DC and will get a fresh copy of the domain model.
      6. Since the new copy differs from the java.net.preferIPv4Stack value used by the managed server, the Host Controller will send the restart required management operation to the managed server.
      7. The ControlledProcessState state machine will ignore such a transition.
      8. The managed server finish deploying the application and managed process state transitions to running
      9. The won't be in restart-required, however, it will be using an obsolete value of java.net.preferIPv4Stack instead of the value configured in the DC.
      Show
      In a domain with a single secondary host with a single managed server: Deploy an application that takes time to start up, which will delay the server process to transition from starting to running Stop and start the managed server. The server process state will be starting until the applications have been deployed. Reload the DC in admin-only mode, the secondary Host Controller will lose the connection with the DC. The managed server is unaffected and continues starting. Change the default value of java.net.preferIPv4Stack system property. Reload the DC in normal mode, the HC will get connected to the DC and will get a fresh copy of the domain model. Since the new copy differs from the java.net.preferIPv4Stack value used by the managed server, the Host Controller will send the restart required management operation to the managed server. The ControlledProcessState state machine will ignore such a transition. The managed server finish deploying the application and managed process state transitions to running The won't be in restart-required, however, it will be using an obsolete value of java.net.preferIPv4Stack instead of the value configured in the DC.

      SyncServerStateOperationHandler checks if managed servers need to be in reload/restart required when their management model is out of sync with the DC model upon a Host Controller reconnection.

      SyncServerStateOperationHandler is correctly sending the required management operations, however, for certain cases where this management operation is executed when the managed server is starting, the transition to restart/reload required is ignored by the ControlledProcessState.

      Essentially, the state machine inside of the ControlledProcessState does not consider that moving from starting to restart/reload required is a valid case.

      There is however a use case where this can perfectly occur, see the reproducer steps associated with this Jira.

              yborgess1@redhat.com Yeray Borges Santana
              rhn-engineering-lgao Lin Gao
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: