summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorShireesh Anjal <shireesh@gluster.com>2011-05-04 15:09:04 +0530
committerShireesh Anjal <shireesh@gluster.com>2011-05-04 15:09:04 +0530
commit37f9decd283c3351dd23a5f7c9d4369a3b1dfcd7 (patch)
tree8f5c505069b7064d9f5ee7c98aa88305f57a8712 /src
parent3faf64eacb53924d33887b308ab6933ea4f534db (diff)
parent40deed80b5e5f7cd7121ae5a6b2b5bce74350226 (diff)
Merge branch 'volume-logs'
Diffstat (limited to 'src')
-rw-r--r--src/com.gluster.storage.management.server/build/glusterserver.ant3
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java34
2 files changed, 25 insertions, 12 deletions
diff --git a/src/com.gluster.storage.management.server/build/glusterserver.ant b/src/com.gluster.storage.management.server/build/glusterserver.ant
index 88602fb6..98012515 100644
--- a/src/com.gluster.storage.management.server/build/glusterserver.ant
+++ b/src/com.gluster.storage.management.server/build/glusterserver.ant
@@ -39,7 +39,8 @@
<include name="**/*.sql" />
</fileset>
</copy>
- <javac srcdir="${basedir}/src" destdir="${WEB-INF}/classes" classpathref="libs" />
+ <!-- TODO: make debug option configurable in jenkins -->
+ <javac srcdir="${basedir}/src" destdir="${WEB-INF}/classes" classpathref="libs" debug="true" debuglevel="lines,vars,source"/>
</target>
<target name="archive" depends="compile">
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java
index 7905111a..e635510a 100644
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java
+++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java
@@ -232,8 +232,14 @@ public class VolumesResource {
@SuppressWarnings("rawtypes")
private Status prepareBrick(String serverName, String diskName, String volumeName) {
- return (Status) ((GenericResponse) serverUtil.executeOnServer(true, serverName, PREPARE_BRICK_SCRIPT + " "
- + diskName + " " + volumeName, GenericResponse.class)).getStatus();
+ Object response = serverUtil.executeOnServer(true, serverName, PREPARE_BRICK_SCRIPT + " "
+ + diskName + " " + volumeName, GenericResponse.class);
+ if(response instanceof GenericResponse) {
+ return ((GenericResponse)response).getStatus();
+ } else {
+ // in case of script failure on server, a Status object will be returned
+ return (Status) response;
+ }
}
private Status createDirectories(List<String> disks, String volumeName) {
@@ -245,11 +251,8 @@ public class VolumesResource {
String[] diskParts = disk.split(":");
String serverName = diskParts[0];
String diskName = diskParts[1];
- try {
- status = prepareBrick(serverName, diskName, volumeName);
- } catch (Exception e) {
- status = new Status(e);
- }
+
+ status = prepareBrick(serverName, diskName, volumeName);
if (status.isSuccess()) {
String brickDir = status.getMessage().trim();
bricks.add(serverName + ":" + brickDir);
@@ -284,10 +287,19 @@ public class VolumesResource {
diskInfo = disks.get(i).split(":");
serverName = diskInfo[0];
diskName = diskInfo[1];
- result = ((GenericResponse) serverUtil.executeOnServer(true, serverName, VOLUME_DIRECTORY_CLEANUP_SCRIPT
- + " " + diskName + " " + volumeName + " " + deleteFlag, GenericResponse.class)).getStatus();
- if (!result.isSuccess()) {
- return result;
+
+ Object response = serverUtil.executeOnServer(true, serverName, VOLUME_DIRECTORY_CLEANUP_SCRIPT
+ + " " + diskName + " " + volumeName + " " + deleteFlag, GenericResponse.class);
+ if(response instanceof GenericResponse) {
+ result = ((GenericResponse)response).getStatus();
+ if (!result.isSuccess()) {
+ // TODO: append error and continue with cleaning up of other directories
+ return result;
+ }
+ } else {
+ // TODO: append error and continue with cleaning up of other directories
+ // In case of script execution failure, a Status object will be returned.
+ return (Status)response;
}
}
return new Status(Status.STATUS_CODE_SUCCESS, "Directories cleaned up successfully!");