diff --git a/core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java b/core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java index 8dfee7db0d0..39ee2127490 100644 --- a/core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java +++ b/core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java @@ -256,7 +256,7 @@ public abstract class CitrixResourceBase implements ServerResource { protected HashMap _pools = new HashMap(5); public enum SRType { - NFS, LVM, ISCSI, ISO, LVMOISCSI; + NFS, LVM, ISCSI, ISO, LVMOISCSI, LVMOHBA; @Override public String toString() { @@ -4997,7 +4997,7 @@ public abstract class CitrixResourceBase implements ServerResource { } boolean IsISCSI(String type) { - return SRType.LVMOISCSI.equals(type) || SRType.LVM.equals(type) ; + return SRType.LVMOHBA.equals(type) || SRType.LVMOISCSI.equals(type) || SRType.LVM.equals(type) ; } protected ManageSnapshotAnswer execute(final ManageSnapshotCommand cmd) { diff --git a/core/src/com/cloud/hypervisor/xen/resource/XenServer56Resource.java b/core/src/com/cloud/hypervisor/xen/resource/XenServer56Resource.java index 5ac153a4ffb..6af791c62c5 100644 --- a/core/src/com/cloud/hypervisor/xen/resource/XenServer56Resource.java +++ b/core/src/com/cloud/hypervisor/xen/resource/XenServer56Resource.java @@ -173,12 +173,6 @@ public class XenServer56Resource extends CitrixResourceBase { protected SR getStorageRepository(Connection conn, StorageFilerTO pool) { try { SR sr = super.getStorageRepository(conn, pool); - - if (!sr.getShared(conn) || ( pool.getType() != StoragePoolType.IscsiLUN - && pool.getType() != StoragePoolType.NetworkFilesystem - && pool.getType() != StoragePoolType.PreSetup)) { - return sr; - } setupHeartbeatSr(conn, sr, false); return sr; } catch (Exception e) { @@ -223,12 +217,12 @@ public class XenServer56Resource extends CitrixResourceBase { } protected String setupHeartbeatSr(Connection conn, SR sr, boolean force) throws XenAPIException, XmlRpcException { - Host host = Host.getByUuid(conn, _host.uuid); SR.Record srRec = sr.getRecord(conn); String srUuid = srRec.uuid; - if (!srRec.shared || (!SRType.LVMOISCSI.equals(srRec.type) && !SRType.NFS.equals(srRec.type))) { + if (!srRec.shared || (!SRType.LVMOHBA.equals(srRec.type) && !SRType.LVMOISCSI.equals(srRec.type) && !SRType.NFS.equals(srRec.type) )) { return srUuid; } + Host host = Host.getByUuid(conn, _host.uuid); Set tags = host.getTags(conn); if (force || !tags.contains("cloud-heartbeat-" + srUuid)) { if (s_logger.isDebugEnabled()) {