[jboss-jira] [JBoss JIRA] (WFCORE-488) Failures of undeploy of a partially failed deployment
Brian Stansberry (JIRA)
issues at jboss.org
Fri Feb 20 15:30:49 EST 2015
[ https://issues.jboss.org/browse/WFCORE-488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13042583#comment-13042583 ]
Brian Stansberry commented on WFCORE-488:
-----------------------------------------
The failure information is correctly getting back to the master HC, but DomainFinalResultHandler ends up discarding it because the slave HCs are reporting failures as well. Basically the scenario I speculated on at https://issues.jboss.org/browse/AS7-4597?focusedCommentId=12688863&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-12688863.
So I need to work out how to better handle that.
> Failures of undeploy of a partially failed deployment
> -----------------------------------------------------
>
> Key: WFCORE-488
> URL: https://issues.jboss.org/browse/WFCORE-488
> Project: WildFly Core
> Issue Type: Bug
> Components: CLI, Domain Management
> Reporter: Arcadiy Ivanov
> Assignee: Alexey Loubyansky
>
> {noformat}
> [domain at localhost:9990 /] undeploy 2e3b75f2-88ff-4eb9-a8b1-9107c452309e.ear --all-relevant-server-groups
> Undeploy failed: JBAS010839: Operation failed or was rolled back on all servers.
> {noformat}
> There are several issues at play here:
> # Insufficient information is displayed along with JBAS010839
> # No actual failure logged either in DC or in individual host's logs
> # Failure to find a deployment unit on a particular host should not result in a failure of a domain-wide undeploy in DeploymentUndeployHandler
> I'll start in a reverse order of causation:
> In DeploymentUndeployHandler.execute
> {noformat}
> public void execute(OperationContext context, ModelNode operation) throws OperationFailedException {
> ModelNode model = context.readResourceForUpdate(PathAddress.EMPTY_ADDRESS).getModel();
> ...
> {noformat}
> OperationContextImpl.readResourceForUpdate calls OperationContextImpl.requireChild:
> {noformat}
> private static Resource requireChild(final Resource resource, final PathElement childPath, final PathAddress fullAddress) {
> if (resource.hasChild(childPath)) {
> return resource.requireChild(childPath);
> } else {
> PathAddress missing = PathAddress.EMPTY_ADDRESS;
> for (PathElement search : fullAddress) {
> missing = missing.append(search);
> if (search.equals(childPath)) {
> break;
> }
> }
> throw ControllerMessages.MESSAGES.managementResourceNotFound(missing);
> }
> }
> {noformat}
> The exception generated by {{throw ControllerMessages.MESSAGES.managementResourceNotFound(missing);}}:
> # does not propagate from the host to DC and to CLI
> # is not logged with any level (not even TRACE) either on host or DC
> # should be handled within DeploymentUndeployHandler not to fail the undeploy operation in case of a partially failed deployment (e.g. EAR with unsatisfied CDI dependencies).
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
More information about the jboss-jira
mailing list