[
https://issues.jboss.org/browse/WFCORE-488?page=com.atlassian.jira.plugin...
]
Brian Stansberry commented on WFCORE-488:
-----------------------------------------
In what process did the "throw
ControllerMessages.MESSAGES.managementResourceNotFound(missing)" occur?
Any idea why the deployment resource was not present there?
Re: "1. does not propagate from the host to DC and to CLI"
Are you saying it doesn't propagate to the DC? Or just that it's not propagated to
the CLI? Or just that it's not *reported* by the CLI? The CLI has an issue with not
providing full details of failures in its output from high level commands.
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@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)