Sahina Bose has uploaded a new change for review.

Change subject: engine: Corrected geo-replication status sync
......................................................................

engine: Corrected geo-replication status sync

Corrected issues while syncing geo-replication
session w.r.t saving slave uuids and retrieving
status

Change-Id: If30bda56f117fedf3d42b51971201e4557f1c2cf
Bug-Url: https://bugzilla.redhat.com/1195699
Signed-off-by: Sahina Bose <sab...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterGeoRepSyncJob.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterGeoRepDaoDbFacadeImpl.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
3 files changed, 15 insertions(+), 8 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/75/39675/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterGeoRepSyncJob.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterGeoRepSyncJob.java
index 08e7278..7210b18 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterGeoRepSyncJob.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterGeoRepSyncJob.java
@@ -177,8 +177,14 @@
                 getGeoRepDao().save(session);
                 
logGeoRepMessage(AuditLogType.GLUSTER_GEOREP_SESSION_DETECTED_FROM_CLI, 
cluster.getId(), session);
             } else {
-                if (sessionInDb.getSlaveNodeUuid() == null && 
sessionInDb.getSlaveVolumeId() == null
-                        && session.getSlaveNodeUuid() == null && 
session.getSlaveVolumeId() == null) {
+                // if retrieved session does not have the slave uuid's set
+                if (session.getSlaveNodeUuid() == null && 
session.getSlaveVolumeId() == null) {
+                    // set it from the one in db
+                    session.setSlaveNodeUuid(sessionInDb.getSlaveNodeUuid());
+                    session.setSlaveVolumeId(sessionInDb.getSlaveVolumeId());
+                }
+                // if even the updated session has no slave ids, try setting 
it by querying db
+                if (session.getSlaveNodeUuid() == null && 
session.getSlaveVolumeId() == null) {
                     updateSlaveNodeAndVolumeId(session);
                 }
                 session.setId(sessionInDb.getId());
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterGeoRepDaoDbFacadeImpl.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterGeoRepDaoDbFacadeImpl.java
index 76a9584..c8879b9 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterGeoRepDaoDbFacadeImpl.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/gluster/GlusterGeoRepDaoDbFacadeImpl.java
@@ -46,7 +46,7 @@
             entity.setSlaveNodeUuid(getGuid(rs, "slave_host_uuid"));
             entity.setSlaveVolumeId(getGuid(rs, "slave_volume_id"));
             entity.setSlaveVolumeName(rs.getString("slave_volume_name"));
-            entity.setStatus(GeoRepSessionStatus.from(rs.getString("status")));
+            
entity.setStatus(GeoRepSessionStatus.valueOf(rs.getString("status")));
             return entity;
         }
     }
@@ -268,6 +268,7 @@
         };
     }
 
+    @Override
     public List<GlusterGeoRepSession> getAllSessions() {
         return 
getCallsHandler().executeReadList("GetAllGlusterGeoRepSessions", 
georepSessionRowMapper, getCustomMapSqlParameterSource());
     }
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
index 1373807..2402440 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java
@@ -1543,7 +1543,7 @@
     @Override
     public GlusterVolumeGeoRepStatusForXmlRpc 
glusterVolumeGeoRepSessionList(String volumeName) {
         JsonRpcRequest request = new 
RequestBuilder("GlusterVolume.geoRepSessionList")
-                    .withParameter("volName", volumeName)
+                .withParameter("volumeName", volumeName)
                     .build();
         Map<String, Object> response = new FutureMap(this.client, 
request).withIgnoreResponseKey();
         return new GlusterVolumeGeoRepStatusForXmlRpc(response);
@@ -1554,9 +1554,9 @@
             String slaveHost,
             String slaveVolumeName) {
         JsonRpcRequest request =
-                new 
RequestBuilder("GlusterVolume.geoRepSessionList").withParameter("volName", 
volumeName)
+                new 
RequestBuilder("GlusterVolume.geoRepSessionList").withParameter("volumeName", 
volumeName)
                 .withParameter("remoteHost", slaveHost)
-                .withParameter("remoteVolName", slaveVolumeName).build();
+                        .withParameter("remoteVolumeName", 
slaveVolumeName).build();
         Map<String, Object> response = new FutureMap(this.client, 
request).withIgnoreResponseKey();
         return new GlusterVolumeGeoRepStatusForXmlRpc(response);
     }
@@ -1566,9 +1566,9 @@
             String slaveHost,
             String slaveVolumeName) {
         JsonRpcRequest request =
-                new 
RequestBuilder("GlusterVolume.geoRepSessionStatus").withParameter("volName", 
volumeName)
+                new 
RequestBuilder("GlusterVolume.geoRepSessionStatus").withParameter("volumeName", 
volumeName)
                 .withParameter("remoteHost", slaveHost)
-                .withParameter("remoteVolName", slaveVolumeName).build();
+                        .withParameter("remoteVolumeName", 
slaveVolumeName).build();
         Map<String, Object> response = new FutureMap(this.client, 
request).withIgnoreResponseKey();
         return new GlusterVolumeGeoRepStatusDetailForXmlRpc(response);
     }


-- 
To view, visit https://gerrit.ovirt.org/39675
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: If30bda56f117fedf3d42b51971201e4557f1c2cf
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.5-gluster
Gerrit-Owner: Sahina Bose <sab...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to