CloudStack CS-15195

Multinode Management server - Not able to put the host in maintanace mode when the request is issed from the management server that is not the owner of the host

resolved fixed
reviewed-by: edison
This commit is contained in:
frank 2012-06-04 11:48:23 -07:00
parent 1be5e08270
commit c88213b5bc
2 changed files with 17 additions and 24 deletions

View File

@ -1,24 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>mgit</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
<linkedResources>
<link>
<name>src</name>
<type>2</type>
<location>/Users/john1/mgit/cloudbridge/src</location>
</link>
</linkedResources>
</projectDescription>

View File

@ -399,6 +399,23 @@ public class ClusterManagerImpl implements ClusterManager {
s_logger.warn("Operation timed out", e);
return null;
}
Answer[] answers = new Answer[1];
answers[0] = new Answer(cmd, result, null);
return _gson.toJson(answers);
} else if (cmds.length == 1 && cmds[0] instanceof PropagateResourceEventCommand) {
PropagateResourceEventCommand cmd = (PropagateResourceEventCommand) cmds[0];
if (s_logger.isDebugEnabled()) {
s_logger.debug("Intercepting resource manager command: " + _gson.toJson(cmd));
}
boolean result = false;
try {
result = _resourceMgr.executeUserRequest(cmd.getHostId(), cmd.getEvent());
} catch (Exception e) {
s_logger.warn("Exception happened while exceuting command from resource manager in other mgmt server", e);
return null;
}
Answer[] answers = new Answer[1];
answers[0] = new Answer(cmd, result, null);
return _gson.toJson(answers);