diff --git a/server/src/com/cloud/host/dao/HostDaoImpl.java b/server/src/com/cloud/host/dao/HostDaoImpl.java index e52e56a9015..18965c7beac 100644 --- a/server/src/com/cloud/host/dao/HostDaoImpl.java +++ b/server/src/com/cloud/host/dao/HostDaoImpl.java @@ -191,7 +191,8 @@ public class HostDaoImpl extends GenericDaoBase implements HostDao UnmanagedDirectConnectSearch.and("server", UnmanagedDirectConnectSearch.entity().getManagementServerId(), SearchCriteria.Op.NULL); UnmanagedDirectConnectSearch.and("avoidstatus", UnmanagedDirectConnectSearch.entity().getStatus(), SearchCriteria.Op.NEQ); UnmanagedDirectConnectSearch.and("clusterId", UnmanagedDirectConnectSearch.entity().getClusterId(), SearchCriteria.Op.EQ); - + UnmanagedDirectConnectSearch.and("lastPinged", UnmanagedDirectConnectSearch.entity().getLastPinged(), SearchCriteria.Op.LTEQ); + /* UnmanagedDirectConnectSearch.op(SearchCriteria.Op.OR, "managementServerId", UnmanagedDirectConnectSearch.entity().getManagementServerId(), SearchCriteria.Op.EQ); UnmanagedDirectConnectSearch.and("lastPinged", UnmanagedDirectConnectSearch.entity().getLastPinged(), SearchCriteria.Op.LTEQ); @@ -252,8 +253,7 @@ public class HostDaoImpl extends GenericDaoBase implements HostDao SearchCriteria sc = UnmanagedDirectConnectSearch.create(); sc.setParameters("avoidstatus", Status.Removed.toString()); sc.setParameters("clusterId", clusterId); - // sc.setParameters("lastPinged", lastPingSecondsAfter); - //sc.setParameters("managementServerId", msid); + sc.setParameters("lastPinged", lastPingSecondsAfter); return search(sc, new Filter(HostVO.class, "id", true, 0L, limit)); } @@ -265,7 +265,8 @@ public class HostDaoImpl extends GenericDaoBase implements HostDao sc.setParameters("statuses", (Object[])states); HostVO host = createForUpdate(); - host.setManagementServerId(null); + host.setManagementServerId(null); + host.setLastPinged((System.currentTimeMillis() >> 10) - ( 10 * 60 )); host.setDisconnectedOn(new Date()); UpdateBuilder ub = getUpdateBuilder(host);