
On 09/22/2011 03:33 PM, Sharad Mishra wrote:
# HG changeset patch # User Sharad Mishra <snmishra@us.ibm.com> # Date 1316716303 25200 # Node ID 5a025903b3dec8d8d5f35e7117be67f095d5fe21 # Parent fb09136deb494008eb3aacee420ad74da7d7c294 Return migration job status in CIM_ConcreteJob.ErrorCode
This patch returns migration job status using the ErrorCode property. A successful migration returns 0 and a non-zero value is returned on failed migration.
Signed-off-by: Sharad Mishra <snmishra@us.ibm.com>
diff -r fb09136deb49 -r 5a025903b3de src/Virt_VSMigrationService.c --- a/src/Virt_VSMigrationService.c Tue Aug 30 08:48:36 2011 -0700 +++ b/src/Virt_VSMigrationService.c Thu Sep 22 11:31:43 2011 -0700 @@ -930,6 +930,7 @@
static void migrate_job_set_state(struct migration_job *job, uint16_t state, + int error_code, const char *status) { CMPIInstance *inst; @@ -953,10 +954,13 @@
CMSetProperty(inst, "JobState", (CMPIValue *)&state, CMPI_uint16); + CMSetProperty(inst, "ErrorCode", + (CMPIValue *)&error_code, CMPI_uint16); CMSetProperty(inst, "Status", (CMPIValue *)status, CMPI_chars);
- CU_DEBUG("Modifying job %s (%i:%s)", job->uuid, state, status); + CU_DEBUG("Modifying job %s (%i:%s) Error Code is %i", + job->uuid, state, status, error_code);
s = CBModifyInstance(_BROKER, job->context, op, inst, NULL); if (s.rc != CMPI_RC_OK) @@ -1279,7 +1283,7 @@ CBAttachThread(_BROKER, job->context);
CU_DEBUG("Migration Job %s started", job->uuid); - migrate_job_set_state(job, CIM_JOBSTATE_RUNNING, "Running"); + migrate_job_set_state(job, CIM_JOBSTATE_RUNNING, 0, "Running");
s = migrate_vs(job);
@@ -1287,10 +1291,12 @@ if (s.rc != CMPI_RC_OK) migrate_job_set_state(job, CIM_JOBSTATE_COMPLETE, + s.rc, CMGetCharPtr(s.msg)); else migrate_job_set_state(job, CIM_JOBSTATE_COMPLETE, + s.rc, "Completed");
raise_deleted_ind(job);
Yay for setting the properties as expected. ;) +1 -- Eduardo de Barros Lima Software Engineer, Open Virtualization Linux Technology Center - IBM/Brazil eblima@br.ibm.com