diff --git a/console-proxy/scripts/_run.sh b/console-proxy/scripts/_run.sh index 2a76271fd54..82121af78e8 100755 --- a/console-proxy/scripts/_run.sh +++ b/console-proxy/scripts/_run.sh @@ -60,4 +60,4 @@ then maxmem=$eightypcnt fi -java -mx${maxmem}m -cp $CP com.cloud.agent.AgentShell $keyvalues $@ +java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -mx${maxmem}m -cp $CP com.cloud.agent.AgentShell $keyvalues $@ diff --git a/server/src/com/cloud/agent/manager/AgentManagerImpl.java b/server/src/com/cloud/agent/manager/AgentManagerImpl.java index 836c7bf9aec..f662bcd9080 100755 --- a/server/src/com/cloud/agent/manager/AgentManagerImpl.java +++ b/server/src/com/cloud/agent/manager/AgentManagerImpl.java @@ -507,7 +507,7 @@ public class AgentManagerImpl implements AgentManager, HandlerFactory, Manager { return ssHost; } else if ( ssHost.getType() == Host.Type.SecondaryStorage) { Long dcId = ssHost.getDataCenterId(); - List ssAHosts = _hostDao.listBy(Host.Type.SecondaryStorageVM, dcId); + List ssAHosts = _hostDao.listSecondaryStorageVM(dcId); if (ssAHosts == null || ssAHosts.isEmpty() ) { return null; } @@ -532,7 +532,7 @@ public class AgentManagerImpl implements AgentManager, HandlerFactory, Manager { private long sendToSSVM(final long dcId, final Command cmd, final Listener listener) { - List ssAHosts = _hostDao.listBy(Host.Type.SecondaryStorageVM, dcId); + List ssAHosts = _hostDao.listSecondaryStorageVM(dcId); if (ssAHosts == null || ssAHosts.isEmpty() ) { return -1; } @@ -546,7 +546,7 @@ public class AgentManagerImpl implements AgentManager, HandlerFactory, Manager { } private Answer sendToSSVM(final long dcId, final Command cmd) { - List ssAHosts = _hostDao.listByTypeDataCenter(Host.Type.SecondaryStorageVM, dcId); + List ssAHosts = _hostDao.listSecondaryStorageVM(dcId); if (ssAHosts == null || ssAHosts.isEmpty() ) { return new Answer(cmd, false, "can not find secondary storage VM agent for data center " + dcId); } diff --git a/server/src/com/cloud/host/dao/HostDao.java b/server/src/com/cloud/host/dao/HostDao.java index abb65a62b6a..edaefc65e61 100644 --- a/server/src/com/cloud/host/dao/HostDao.java +++ b/server/src/com/cloud/host/dao/HostDao.java @@ -182,4 +182,6 @@ public interface HostDao extends GenericDao { List listAllSecondaryStorageHosts(long dataCenterId); List listByManagementServer(long msId); + + List listSecondaryStorageVM(long dcId); } diff --git a/server/src/com/cloud/host/dao/HostDaoImpl.java b/server/src/com/cloud/host/dao/HostDaoImpl.java index cce0eba9a4d..1b9cd057ca2 100644 --- a/server/src/com/cloud/host/dao/HostDaoImpl.java +++ b/server/src/com/cloud/host/dao/HostDaoImpl.java @@ -95,6 +95,7 @@ public class HostDaoImpl extends GenericDaoBase implements HostDao protected final SearchBuilder DirectConnectSearch; protected final SearchBuilder ManagedDirectConnectSearch; protected final SearchBuilder ManagedRoutingServersSearch; + protected final SearchBuilder SecondaryStorageVMSearch; protected final GenericSearchBuilder HostsInStatusSearch; protected final GenericSearchBuilder CountRoutingByDc; @@ -143,6 +144,12 @@ public class HostDaoImpl extends GenericDaoBase implements HostDao TypeDcSearch.and("type", TypeDcSearch.entity().getType(), SearchCriteria.Op.EQ); TypeDcSearch.and("dc", TypeDcSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ); TypeDcSearch.done(); + + SecondaryStorageVMSearch = createSearchBuilder(); + SecondaryStorageVMSearch.and("type", SecondaryStorageVMSearch.entity().getType(), SearchCriteria.Op.EQ); + SecondaryStorageVMSearch.and("dc", SecondaryStorageVMSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ); + SecondaryStorageVMSearch.and("status", SecondaryStorageVMSearch.entity().getStatus(), SearchCriteria.Op.EQ); + SecondaryStorageVMSearch.done(); TypeDcStatusSearch = createSearchBuilder(); TypeDcStatusSearch.and("type", TypeDcStatusSearch.entity().getType(), SearchCriteria.Op.EQ); @@ -693,7 +700,16 @@ public class HostDaoImpl extends GenericDaoBase implements HostDao return listBy(sc); } + + @Override + public List listSecondaryStorageVM(long dcId) { + SearchCriteria sc = SecondaryStorageVMSearch.create(); + sc.setParameters("type", Type.SecondaryStorageVM); + sc.setParameters("status", Status.Up); + sc.setParameters("dc", dcId); + return listBy(sc); + } @Override public List listByType(Type type) { SearchCriteria sc = TypeSearch.create();