summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.server
diff options
context:
space:
mode:
authorShireesh Anjal <anjalshireesh@gmail.com>2011-07-19 06:40:30 -0700
committerShireesh Anjal <anjalshireesh@gmail.com>2011-07-19 06:40:30 -0700
commit629415409ceed7155090d6d7485043c6cf9bee87 (patch)
tree4446419ee7d517106c19286272f6585ee920dff2 /src/com.gluster.storage.management.server
parent06bf0e698fbd747944c1177d3d6c40c5c50af0c2 (diff)
parentc6ac200224c810071d2737414cdefdaa1c4a4a40 (diff)
Merge pull request #123 from Dhandapani/master
Initialize Disk enhancement
Diffstat (limited to 'src/com.gluster.storage.management.server')
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/v1_0/GlusterServersResource.java4
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/tasks/InitializeDiskTask.java2
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java6
3 files changed, 9 insertions, 3 deletions
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/v1_0/GlusterServersResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/v1_0/GlusterServersResource.java
index 17aeef2b..271161b9 100644
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/v1_0/GlusterServersResource.java
+++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/v1_0/GlusterServersResource.java
@@ -58,6 +58,7 @@ import com.gluster.storage.management.core.exceptions.ConnectionException;
import com.gluster.storage.management.core.exceptions.GlusterRuntimeException;
import com.gluster.storage.management.core.model.GlusterServer;
import com.gluster.storage.management.core.model.GlusterServer.SERVER_STATUS;
+import com.gluster.storage.management.core.model.TaskStatus;
import com.gluster.storage.management.core.response.GlusterServerListResponse;
import com.gluster.storage.management.core.response.ServerNameListResponse;
import com.gluster.storage.management.server.data.ClusterInfo;
@@ -454,6 +455,9 @@ public class GlusterServersResource extends AbstractServersResource {
InitializeDiskTask initializeTask = new InitializeDiskTask(clusterService, clusterName, serverName, diskName, fsType);
try {
initializeTask.start();
+ // Check the initialize disk status
+ TaskStatus taskStatus = initializeTask.checkStatus();
+ initializeTask.getTaskInfo().setStatus(taskStatus);
taskResource.addTask(initializeTask);
return acceptedResponse(RESTConstants.RESOURCE_PATH_CLUSTERS + "/" + clusterName + "/" + RESOURCE_TASKS + "/"
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/tasks/InitializeDiskTask.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/tasks/InitializeDiskTask.java
index 2fe2373b..6aa63e9e 100644
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/tasks/InitializeDiskTask.java
+++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/tasks/InitializeDiskTask.java
@@ -134,7 +134,7 @@ public class InitializeDiskTask extends Task {
public TaskStatus checkStatus() {
try {
- return glusterUtil.checkInitializeDiskStatus(serverName, getDiskName());
+ return glusterUtil.getInitializingDeviceStatus(serverName, getDiskName());
} catch(ConnectionException e) {
// online server might have gone offline. update the failure status
return new TaskStatus(new Status(Status.STATUS_CODE_FAILURE, e.getMessage()));
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java
index a32c4f18..9878f223 100644
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java
+++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java
@@ -578,7 +578,7 @@ public class GlusterUtil {
}
}
- public TaskStatus checkInitializeDiskStatus(String serverName, String diskName) {
+ public TaskStatus getInitializingDeviceStatus(String serverName, String diskName) {
Object response = serverUtil.executeOnServer(true, serverName, INITIALIZE_DISK_STATUS_SCRIPT + " " + diskName,
InitDiskStatusResponse.class);
@@ -597,8 +597,10 @@ public class GlusterUtil {
taskStatus.setCode(Status.STATUS_CODE_RUNNING);
taskStatus.setPercentCompleted(Math.round(initDiskStatusResponse.getCompletedBlocks()
/ initDiskStatusResponse.getTotalBlocks() * 100));
+ } else if(initDiskStatusResponse.getFormatStatus() == FORMAT_STATUS.NOT_RUNNING) {
+ taskStatus.setCode(Status.STATUS_CODE_FAILURE);
}
-
+
taskStatus.setMessage(initDiskStatusResponse.getMessage());
return taskStatus;
}