diff options
| author | Shireesh Anjal <anjalshireesh@gmail.com> | 2011-07-19 06:40:30 -0700 |
|---|---|---|
| committer | Shireesh Anjal <anjalshireesh@gmail.com> | 2011-07-19 06:40:30 -0700 |
| commit | 629415409ceed7155090d6d7485043c6cf9bee87 (patch) | |
| tree | 4446419ee7d517106c19286272f6585ee920dff2 /src/com.gluster.storage.management.server | |
| parent | 06bf0e698fbd747944c1177d3d6c40c5c50af0c2 (diff) | |
| parent | c6ac200224c810071d2737414cdefdaa1c4a4a40 (diff) | |
Merge pull request #123 from Dhandapani/master
Initialize Disk enhancement
Diffstat (limited to 'src/com.gluster.storage.management.server')
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; } |
