Uploaded image for project: 'WildFly Core'
  1. WildFly Core
  2. WFCORE-3628

Ensure services installed by HostControllerService and ApplicationServerService are tracked by the ContainerStateMonitor

    XMLWordPrintable

Details

    • Enhancement
    • Resolution: Unresolved
    • Major
    • None
    • None
    • Management

    Description

      WFCORE-3624 is a specific example of a more general problem – services that may be recorded as dependencies of services installed by management ops are not tracked by the ContainerStateMonitor. This makes it possible to get problems like WFCORE-3624.

      In practice WFCORE-3624 is fairly unique, as the problem service was ON_DEMAND. Also, most services installed by HostControllerService and ApplicationServerService are themselves dependencies of DomainModelControllerService and ServerService (which provide the ModelController) so if they are not started no management ops can proceed. But the code would be more robust if the way these were installed involved logic that led to them being tracked by the StabilityMonitor used by ContainerStateMonitor. Doing this would help ensure that future services like this don't fall into a crack the way ExternalManagementRequestExecutor did.

      Note – I don't think DomainModelControllerService and ServerService themselves should be monitored. Not HostControllerService and ApplicationServerService either.

      Here's some analysis I did when trying to figure out WFCORE-3624:

      HostControllerService
      ---------------------
      ProcessControllerConnectionService – DMCS depends
      HostControllerExecutorService – DMCS depends
      HostPathManagerService - DMCS depends
      HostControllerScheduledExecutorService – no dep
      Value<ProductConfig> – no dep
      ExternalManagementRequestExecutor – no dep

      ApplicationServerService
      ------------------------
      ContentRepositoryImpl or RemoteFileRepositoryService – SS depends
      ContentCleanerService – no dep
      ServerDeploymentRepositoryImpl – SS depends
      ServiceModuleLoader – SS depends
      ExternalModuleService – SS depends
      ServerPathManagerService – SS depends
      ServerEnvironmentService – no dep
      Value<ProductConfig> – no dep
      ServerExecutorService – SS dep if executor is configured
      ServerScheduledExecutorService – no dep
      ExternalManagementRequestExecutor – no dep

      Attachments

        Activity

          People

            Unassigned Unassigned
            bstansbe@redhat.com Brian Stansberry
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: