Fix job error message after unclean master shutdown
authorHrvoje Ribicic <riba@google.com>
Thu, 5 Dec 2013 09:49:01 +0000 (10:49 +0100)
committerHrvoje Ribicic <riba@google.com>
Thu, 5 Dec 2013 13:10:10 +0000 (14:10 +0100)
According to commit 599ee321eb, any job-related error messages should
be encoded within a Ganeti-specific error and not passed on as a
string, to allow for easier parsing.

For jobs suffering from an undesirable status after an unclean master
daemon shutdown, the message was not encoded, as reported in issue 618.
This patch fixes the problem.

Signed-off-by: Hrvoje Ribicic <riba@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>

lib/jqueue.py

index 110d386..57fe4f3 100644 (file)
@@ -1756,8 +1756,9 @@ class JobQueue(object):
           job.MarkUnfinishedOps(constants.OP_STATUS_QUEUED, None)
           restartjobs.append(job)
         else:
+          to_encode = errors.OpExecError("Unclean master daemon shutdown")
           job.MarkUnfinishedOps(constants.OP_STATUS_ERROR,
-                                "Unclean master daemon shutdown")
+                                _EncodeOpError(to_encode))
           job.Finalize()
 
         self.UpdateJobUnlocked(job)