[jboss-jira] [JBoss JIRA] (WFCORE-2165) Get MSC stability before reinstalling removed services or bouncing services that are starting
Brian Stansberry (JIRA)
issues at jboss.org
Sun Jan 8 12:30:00 EST 2017
Brian Stansberry created WFCORE-2165:
----------------------------------------
Summary: Get MSC stability before reinstalling removed services or bouncing services that are starting
Key: WFCORE-2165
URL: https://issues.jboss.org/browse/WFCORE-2165
Project: WildFly Core
Issue Type: Task
Components: Domain Management
Reporter: Brian Stansberry
Assignee: Brian Stansberry
This task is to implement workarounds for issues like MSC-155 and MSC-156. The MSC issues are manifesting themselves as problems when chains of interdependent deployments are deployed and the deployments depended upon by long chains of dependents are redeployed. The result is an MSC service container that may not reach stability. For example, deployment C.war depends on B.ear which depends on A.ear. Redeploying A.ear will sometimes results in an unstable service container.
Specifically this task is to:
1) If a management op removes a service and then later reinstalls the same service (e.g. in a redeploy op, where the service is the root service for the deployment), pause briefly to give MSC a chance to stabilize before doing the install. Note this is just a pause, and there is no guarantee stability will happen in that period, and failure to stabilize should be ignored. This one is purely a workaround.
2) If DeploymentUnitPhaseService detects it is starting a second time, it reacts to that by finding the root service for the deployment, stopping it and then via an MSC listener starting it as soon as stopped. (This is to ensure the full DUP chain runs, as restarting parts of the chain is not reliable in terms of correctly setting things up.) Replace this approach with one where DUPS simply tells the management layer that the deployment needs to be restarted, with the management layer itself taking care of it before completing Stage.RUNTIME. The management layer will await MSC stability before stopping the deployments and will await stability before starting them again.
This latter element is not purely a workaround, as there may be benefits to the more coordinated restart this provides beyond avoiding MSC issues.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
More information about the jboss-jira
mailing list