Index: /trunk/ippTools/configure.ac
===================================================================
--- /trunk/ippTools/configure.ac	(revision 17141)
+++ /trunk/ippTools/configure.ac	(revision 17142)
@@ -18,5 +18,5 @@
 PKG_CHECK_MODULES([PSLIB], [pslib >= 1.1.0])
 PKG_CHECK_MODULES([PSMODULES], [psmodules >= 1.1.0])
-PKG_CHECK_MODULES([IPPDB], [ippdb >= 1.1.31]) 
+PKG_CHECK_MODULES([IPPDB], [ippdb >= 1.1.32]) 
 
 PXTOOLS_CFLAGS="${PSLIB_CFLAGS=} ${PSMODULES_CFLAGS=} ${IPPDB_CFLAGS=}"
Index: /trunk/ippTools/src/camtool.c
===================================================================
--- /trunk/ippTools/src/camtool.c	(revision 17141)
+++ /trunk/ippTools/src/camtool.c	(revision 17142)
@@ -548,4 +548,5 @@
             pendingRow->cam_id,
             pendingRow->workdir,
+            pendingRow->label,
             pendingRow->dvodb,
             pendingRow->tess_id,
Index: /trunk/ippTools/src/pxwarp.c
===================================================================
--- /trunk/ippTools/src/pxwarp.c	(revision 17141)
+++ /trunk/ippTools/src/pxwarp.c	(revision 17142)
@@ -59,4 +59,5 @@
                     psS64 cam_id,
                     char *workdir,
+                    char *label,
                     char *dvodb,
                     char *tess_id,
@@ -73,4 +74,5 @@
         workdir,
         "dirty",    // workdir_state
+        label,
         dvodb,
         tess_id,
Index: /trunk/ippTools/src/pxwarp.h
===================================================================
--- /trunk/ippTools/src/pxwarp.h	(revision 17141)
+++ /trunk/ippTools/src/pxwarp.h	(revision 17142)
@@ -30,4 +30,5 @@
                     psS64 cam_id,
                     char *workdir,
+                    char *label,
                     char *dvodb,
                     char *tess_id,
Index: /trunk/ippTools/src/warptool.c
===================================================================
--- /trunk/ippTools/src/warptool.c	(revision 17141)
+++ /trunk/ippTools/src/warptool.c	(revision 17142)
@@ -114,4 +114,5 @@
 
     // optional
+    PXOPT_LOOKUP_STR(label, config->args, "-label", false, false);
     PXOPT_LOOKUP_STR(dvodb, config->args, "-dvodb", false, false);
     PXOPT_LOOKUP_STR(tess_id, config->args, "-tess_id", false, false);
@@ -130,4 +131,5 @@
             workdir,
             "dirty",    // workdir_state
+            label,
             dvodb,
             tess_id,
Index: /trunk/ippTools/src/warptoolConfig.c
===================================================================
--- /trunk/ippTools/src/warptoolConfig.c	(revision 17141)
+++ /trunk/ippTools/src/warptoolConfig.c	(revision 17142)
@@ -55,4 +55,6 @@
     psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-workdir", 0,
             "define workdir (required)", NULL);
+    psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-label", 0,
+            "define label", NULL);
     psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-dvodb", 0,
             "define dvodb", NULL);
Index: /trunk/ippdb/configure.ac
===================================================================
--- /trunk/ippdb/configure.ac	(revision 17141)
+++ /trunk/ippdb/configure.ac	(revision 17142)
@@ -7,5 +7,5 @@
 AC_PREREQ(2.61)
 
-AC_INIT([ippdb], [1.1.31], [pan-starrs.ifa.hawaii.edu])
+AC_INIT([ippdb], [1.1.32], [pan-starrs.ifa.hawaii.edu])
 AC_CONFIG_SRCDIR([ippdb.pc.in])
 
Index: /trunk/ippdb/src/ippdb.c
===================================================================
--- /trunk/ippdb/src/ippdb.c	(revision 17141)
+++ /trunk/ippdb/src/ippdb.c	(revision 17142)
@@ -9503,5 +9503,5 @@
 static void warpRunRowFree(warpRunRow *object);
 
-warpRunRow *warpRunRowAlloc(psS64 warp_id, psS64 cam_id, const char *mode, const char *state, const char *workdir, const char *workdir_state, const char *dvodb, const char *tess_id, const char *end_stage, psTime* registered, bool magiced)
+warpRunRow *warpRunRowAlloc(psS64 warp_id, psS64 cam_id, const char *mode, const char *state, const char *workdir, const char *workdir_state, const char *label, const char *dvodb, const char *tess_id, const char *end_stage, psTime* registered, bool magiced)
 {
     warpRunRow      *_object;
@@ -9516,4 +9516,5 @@
     _object->workdir = psStringCopy(workdir);
     _object->workdir_state = psStringCopy(workdir_state);
+    _object->label = psStringCopy(label);
     _object->dvodb = psStringCopy(dvodb);
     _object->tess_id = psStringCopy(tess_id);
@@ -9531,4 +9532,5 @@
     psFree(object->workdir);
     psFree(object->workdir_state);
+    psFree(object->label);
     psFree(object->dvodb);
     psFree(object->tess_id);
@@ -9570,4 +9572,9 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, "key", "64")) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item label");
+        psFree(md);
+        return false;
+    }
     if (!psMetadataAdd(md, PS_LIST_TAIL, "dvodb", PS_DATA_STRING, NULL, "255")) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item dvodb");
@@ -9608,5 +9615,5 @@
 }
 
-bool warpRunInsert(psDB * dbh, psS64 warp_id, psS64 cam_id, const char *mode, const char *state, const char *workdir, const char *workdir_state, const char *dvodb, const char *tess_id, const char *end_stage, psTime* registered, bool magiced)
+bool warpRunInsert(psDB * dbh, psS64 warp_id, psS64 cam_id, const char *mode, const char *state, const char *workdir, const char *workdir_state, const char *label, const char *dvodb, const char *tess_id, const char *end_stage, psTime* registered, bool magiced)
 {
     psMetadata *md = psMetadataAlloc();
@@ -9638,4 +9645,9 @@
     if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir_state", PS_DATA_STRING, NULL, workdir_state)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item workdir_state");
+        psFree(md);
+        return false;
+    }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, NULL, label)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item label");
         psFree(md);
         return false;
@@ -9689,5 +9701,5 @@
 bool warpRunInsertObject(psDB *dbh, warpRunRow *object)
 {
-    return warpRunInsert(dbh, object->warp_id, object->cam_id, object->mode, object->state, object->workdir, object->workdir_state, object->dvodb, object->tess_id, object->end_stage, object->registered, object->magiced);
+    return warpRunInsert(dbh, object->warp_id, object->cam_id, object->mode, object->state, object->workdir, object->workdir_state, object->label, object->dvodb, object->tess_id, object->end_stage, object->registered, object->magiced);
 }
 
@@ -9792,4 +9804,9 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, NULL, object->label)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item label");
+        psFree(md);
+        return false;
+    }
     if (!psMetadataAdd(md, PS_LIST_TAIL, "dvodb", PS_DATA_STRING, NULL, object->dvodb)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item dvodb");
@@ -9856,4 +9873,9 @@
         return false;
     }
+    char* label = psMetadataLookupPtr(&status, md, "label");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item label");
+        return false;
+    }
     char* dvodb = psMetadataLookupPtr(&status, md, "dvodb");
     if (!status) {
@@ -9882,5 +9904,5 @@
     }
 
-    return warpRunRowAlloc(warp_id, cam_id, mode, state, workdir, workdir_state, dvodb, tess_id, end_stage, registered, magiced);
+    return warpRunRowAlloc(warp_id, cam_id, mode, state, workdir, workdir_state, label, dvodb, tess_id, end_stage, registered, magiced);
 }
 psArray *warpRunSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
@@ -24898,5 +24920,5 @@
 static void pstampRequestRowFree(pstampRequestRow *object);
 
-pstampRequestRow *pstampRequestRowAlloc(psS64 req_id, psS64 ds_id, const char *state, const char *outFileset, const char *uri)
+pstampRequestRow *pstampRequestRowAlloc(psS64 req_id, psS64 ds_id, const char *state, const char *outFileset, const char *uri, psS16 resultsFile)
 {
     pstampRequestRow *_object;
@@ -24910,4 +24932,5 @@
     _object->outFileset = psStringCopy(outFileset);
     _object->uri = psStringCopy(uri);
+    _object->resultsFile = resultsFile;
 
     return _object;
@@ -24949,4 +24972,9 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "resultsFile", PS_DATA_S16, NULL, 0)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item resultsFile");
+        psFree(md);
+        return false;
+    }
 
     bool status = psDBCreateTable(dbh, PSTAMPREQUEST_TABLE_NAME, md);
@@ -24962,5 +24990,5 @@
 }
 
-bool pstampRequestInsert(psDB * dbh, psS64 req_id, psS64 ds_id, const char *state, const char *outFileset, const char *uri)
+bool pstampRequestInsert(psDB * dbh, psS64 req_id, psS64 ds_id, const char *state, const char *outFileset, const char *uri, psS16 resultsFile)
 {
     psMetadata *md = psMetadataAlloc();
@@ -24987,4 +25015,9 @@
     if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, uri)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item uri");
+        psFree(md);
+        return false;
+    }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "resultsFile", PS_DATA_S16, NULL, resultsFile)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item resultsFile");
         psFree(md);
         return false;
@@ -25013,5 +25046,5 @@
 bool pstampRequestInsertObject(psDB *dbh, pstampRequestRow *object)
 {
-    return pstampRequestInsert(dbh, object->req_id, object->ds_id, object->state, object->outFileset, object->uri);
+    return pstampRequestInsert(dbh, object->req_id, object->ds_id, object->state, object->outFileset, object->uri, object->resultsFile);
 }
 
@@ -25111,4 +25144,9 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "resultsFile", PS_DATA_S16, NULL, object->resultsFile)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item resultsFile");
+        psFree(md);
+        return false;
+    }
 
 
@@ -25145,6 +25183,11 @@
         return false;
     }
-
-    return pstampRequestRowAlloc(req_id, ds_id, state, outFileset, uri);
+    psS16 resultsFile = psMetadataLookupS16(&status, md, "resultsFile");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item resultsFile");
+        return false;
+    }
+
+    return pstampRequestRowAlloc(req_id, ds_id, state, outFileset, uri, resultsFile);
 }
 psArray *pstampRequestSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
@@ -25264,5 +25307,5 @@
 static void pstampJobRowFree(pstampJobRow *object);
 
-pstampJobRow *pstampJobRowAlloc(psS64 job_id, psS64 req_id, const char *state, psS32 result, const char *uri, const char *outputBase, const char *args)
+pstampJobRow *pstampJobRowAlloc(psS64 job_id, psS64 req_id, const char *state, const char *jobType, psS32 result, const char *uri, const char *outputBase, const char *args)
 {
     pstampJobRow    *_object;
@@ -25274,4 +25317,5 @@
     _object->req_id = req_id;
     _object->state = psStringCopy(state);
+    _object->jobType = psStringCopy(jobType);
     _object->result = result;
     _object->uri = psStringCopy(uri);
@@ -25285,4 +25329,5 @@
 {
     psFree(object->state);
+    psFree(object->jobType);
     psFree(object->uri);
     psFree(object->outputBase);
@@ -25308,4 +25353,9 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "jobType", PS_DATA_STRING, NULL, "16")) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item jobType");
+        psFree(md);
+        return false;
+    }
     if (!psMetadataAdd(md, PS_LIST_TAIL, "result", PS_DATA_S32, NULL, 0)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item result");
@@ -25341,5 +25391,5 @@
 }
 
-bool pstampJobInsert(psDB * dbh, psS64 job_id, psS64 req_id, const char *state, psS32 result, const char *uri, const char *outputBase, const char *args)
+bool pstampJobInsert(psDB * dbh, psS64 job_id, psS64 req_id, const char *state, const char *jobType, psS32 result, const char *uri, const char *outputBase, const char *args)
 {
     psMetadata *md = psMetadataAlloc();
@@ -25356,4 +25406,9 @@
     if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, NULL, state)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item state");
+        psFree(md);
+        return false;
+    }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "jobType", PS_DATA_STRING, NULL, jobType)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item jobType");
         psFree(md);
         return false;
@@ -25402,5 +25457,5 @@
 bool pstampJobInsertObject(psDB *dbh, pstampJobRow *object)
 {
-    return pstampJobInsert(dbh, object->job_id, object->req_id, object->state, object->result, object->uri, object->outputBase, object->args);
+    return pstampJobInsert(dbh, object->job_id, object->req_id, object->state, object->jobType, object->result, object->uri, object->outputBase, object->args);
 }
 
@@ -25490,4 +25545,9 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "jobType", PS_DATA_STRING, NULL, object->jobType)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item jobType");
+        psFree(md);
+        return false;
+    }
     if (!psMetadataAdd(md, PS_LIST_TAIL, "result", PS_DATA_S32, NULL, object->result)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item result");
@@ -25534,4 +25594,9 @@
         return false;
     }
+    char* jobType = psMetadataLookupPtr(&status, md, "jobType");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item jobType");
+        return false;
+    }
     psS32 result = psMetadataLookupS32(&status, md, "result");
     if (!status) {
@@ -25555,5 +25620,5 @@
     }
 
-    return pstampJobRowAlloc(job_id, req_id, state, result, uri, outputBase, args);
+    return pstampJobRowAlloc(job_id, req_id, state, jobType, result, uri, outputBase, args);
 }
 psArray *pstampJobSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
Index: /trunk/ippdb/src/ippdb.h
===================================================================
--- /trunk/ippdb/src/ippdb.h	(revision 17141)
+++ /trunk/ippdb/src/ippdb.h	(revision 17142)
@@ -3926,4 +3926,5 @@
     char            *workdir;
     char            *workdir_state;
+    char            *label;
     char            *dvodb;
     char            *tess_id;
@@ -3945,4 +3946,5 @@
     const char      *workdir,
     const char      *workdir_state,
+    const char      *label,
     const char      *dvodb,
     const char      *tess_id,
@@ -3985,4 +3987,5 @@
     const char      *workdir,
     const char      *workdir_state,
+    const char      *label,
     const char      *dvodb,
     const char      *tess_id,
@@ -11383,4 +11386,5 @@
     char            *outFileset;
     char            *uri;
+    psS16           resultsFile;
 } pstampRequestRow;
 
@@ -11395,5 +11399,6 @@
     const char      *state,
     const char      *outFileset,
-    const char      *uri
+    const char      *uri,
+    psS16           resultsFile
 );
 
@@ -11429,5 +11434,6 @@
     const char      *state,
     const char      *outFileset,
-    const char      *uri
+    const char      *uri,
+    psS16           resultsFile
 );
 
@@ -11588,4 +11594,5 @@
     psS64           req_id;
     char            *state;
+    char            *jobType;
     psS32           result;
     char            *uri;
@@ -11603,4 +11610,5 @@
     psS64           req_id,
     const char      *state,
+    const char      *jobType,
     psS32           result,
     const char      *uri,
@@ -11639,4 +11647,5 @@
     psS64           req_id,
     const char      *state,
+    const char      *jobType,
     psS32           result,
     const char      *uri,
Index: /trunk/ippdb/tests/alloc.c
===================================================================
--- /trunk/ippdb/tests/alloc.c	(revision 17141)
+++ /trunk/ippdb/tests/alloc.c	(revision 17142)
@@ -1172,5 +1172,5 @@
         warpRunRow      *object;
 
-        object = warpRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z", true    );
+        object = warpRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z", true    );
 
         if (!object) {
@@ -1202,4 +1202,8 @@
             exit(EXIT_FAILURE);
         }
+        if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {
+            psFree(object);
+            exit(EXIT_FAILURE);
+        }
         if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) {
             psFree(object);
@@ -2845,5 +2849,5 @@
         pstampRequestRow *object;
 
-        object = pstampRequestRowAlloc(-64, -64, "a string", "a string", "a string"    );
+        object = pstampRequestRowAlloc(-64, -64, "a string", "a string", "a string", -16    );
 
         if (!object) {
@@ -2871,4 +2875,8 @@
             exit(EXIT_FAILURE);
         }
+        if (!object->resultsFile == -16) {
+            psFree(object);
+            exit(EXIT_FAILURE);
+        }
 
         psFree(object);
@@ -2878,5 +2886,5 @@
         pstampJobRow    *object;
 
-        object = pstampJobRowAlloc(-64, -64, "a string", -32, "a string", "a string", "a string"    );
+        object = pstampJobRowAlloc(-64, -64, "a string", "a string", -32, "a string", "a string", "a string"    );
 
         if (!object) {
@@ -2893,4 +2901,8 @@
         }
         if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {
+            psFree(object);
+            exit(EXIT_FAILURE);
+        }
+        if (strncmp(object->jobType, "a string", MAX_STRING_LENGTH)) {
             psFree(object);
             exit(EXIT_FAILURE);
Index: /trunk/ippdb/tests/insert.c
===================================================================
--- /trunk/ippdb/tests/insert.c	(revision 17141)
+++ /trunk/ippdb/tests/insert.c	(revision 17142)
@@ -253,5 +253,5 @@
         }
 
-        if (!warpRunInsert(dbh, -64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z", true)) {
+        if (!warpRunInsert(dbh, -64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z", true)) {
             exit(EXIT_FAILURE);
         }
@@ -763,20 +763,20 @@
         }
 
-        if (!pstampRequestInsert(dbh, -64, -64, "a string", "a string", "a string")) {
-            exit(EXIT_FAILURE);
-        }
-
-        psDBCleanup(dbh);
-    }
-
-    {
-        psDB            *dbh;
-
-        dbh = psDBInit("localhost", "test", NULL, "test");
-        if (!dbh) {
-            exit(EXIT_FAILURE);
-        }
-
-        if (!pstampJobInsert(dbh, -64, -64, "a string", -32, "a string", "a string", "a string")) {
+        if (!pstampRequestInsert(dbh, -64, -64, "a string", "a string", "a string", -16)) {
+            exit(EXIT_FAILURE);
+        }
+
+        psDBCleanup(dbh);
+    }
+
+    {
+        psDB            *dbh;
+
+        dbh = psDBInit("localhost", "test", NULL, "test");
+        if (!dbh) {
+            exit(EXIT_FAILURE);
+        }
+
+        if (!pstampJobInsert(dbh, -64, -64, "a string", "a string", -32, "a string", "a string", "a string")) {
             exit(EXIT_FAILURE);
         }
Index: /trunk/ippdb/tests/insertobject.c
===================================================================
--- /trunk/ippdb/tests/insertobject.c	(revision 17141)
+++ /trunk/ippdb/tests/insertobject.c	(revision 17142)
@@ -366,5 +366,5 @@
         }
 
-        object = warpRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z", true);
+        object = warpRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z", true);
         if (!object) {
             exit(EXIT_FAILURE);
@@ -1114,5 +1114,5 @@
         }
 
-        object = pstampRequestRowAlloc(-64, -64, "a string", "a string", "a string");
+        object = pstampRequestRowAlloc(-64, -64, "a string", "a string", "a string", -16);
         if (!object) {
             exit(EXIT_FAILURE);
@@ -1136,5 +1136,5 @@
         }
 
-        object = pstampJobRowAlloc(-64, -64, "a string", -32, "a string", "a string", "a string");
+        object = pstampJobRowAlloc(-64, -64, "a string", "a string", -32, "a string", "a string", "a string");
         if (!object) {
             exit(EXIT_FAILURE);
Index: /trunk/ippdb/tests/metadatafromobject.c
===================================================================
--- /trunk/ippdb/tests/metadatafromobject.c	(revision 17141)
+++ /trunk/ippdb/tests/metadatafromobject.c	(revision 17142)
@@ -1283,5 +1283,5 @@
         bool            status;
 
-        object = warpRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z", true);
+        object = warpRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z", true);
         if (!object) {
             exit(EXIT_FAILURE);
@@ -1317,4 +1317,8 @@
             exit(EXIT_FAILURE);
         }
+        if (strncmp(psMetadataLookupPtr(&status, md, "label"), "a string", MAX_STRING_LENGTH)) {
+            psFree(md);
+            exit(EXIT_FAILURE);
+        }
         if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) {
             psFree(md);
@@ -3162,5 +3166,5 @@
         bool            status;
 
-        object = pstampRequestRowAlloc(-64, -64, "a string", "a string", "a string");
+        object = pstampRequestRowAlloc(-64, -64, "a string", "a string", "a string", -16);
         if (!object) {
             exit(EXIT_FAILURE);
@@ -3192,4 +3196,7 @@
             exit(EXIT_FAILURE);
         }
+            psFree(md);
+            exit(EXIT_FAILURE);
+        }
 
         psFree(md);
@@ -3201,5 +3208,5 @@
         bool            status;
 
-        object = pstampJobRowAlloc(-64, -64, "a string", -32, "a string", "a string", "a string");
+        object = pstampJobRowAlloc(-64, -64, "a string", "a string", -32, "a string", "a string", "a string");
         if (!object) {
             exit(EXIT_FAILURE);
@@ -3220,4 +3227,8 @@
         }
         if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) {
+            psFree(md);
+            exit(EXIT_FAILURE);
+        }
+        if (strncmp(psMetadataLookupPtr(&status, md, "jobType"), "a string", MAX_STRING_LENGTH)) {
             psFree(md);
             exit(EXIT_FAILURE);
Index: /trunk/ippdb/tests/objectfrommetadata.c
===================================================================
--- /trunk/ippdb/tests/objectfrommetadata.c	(revision 17141)
+++ /trunk/ippdb/tests/objectfrommetadata.c	(revision 17142)
@@ -2191,4 +2191,8 @@
             exit(EXIT_FAILURE);
         }
+        if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) {
+            psFree(md);
+            exit(EXIT_FAILURE);
+        }
         if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) {
             psFree(md);
@@ -2238,4 +2242,8 @@
         }
         if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) {
+            psFree(object);
+            exit(EXIT_FAILURE);
+        }
+        if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {
             psFree(object);
             exit(EXIT_FAILURE);
@@ -5129,4 +5137,7 @@
             exit(EXIT_FAILURE);
         }
+            psFree(md);
+            exit(EXIT_FAILURE);
+        }
 
         object = pstampRequestObjectFromMetadata(md);
@@ -5153,4 +5164,7 @@
         }
         if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
+            psFree(object);
+            exit(EXIT_FAILURE);
+        }
             psFree(object);
             exit(EXIT_FAILURE);
@@ -5175,4 +5189,8 @@
             exit(EXIT_FAILURE);
         }
+        if (!psMetadataAddStr(md, PS_LIST_TAIL, "jobType", 0, NULL, "a string")) {
+            psFree(md);
+            exit(EXIT_FAILURE);
+        }
         if (!psMetadataAddS32(md, PS_LIST_TAIL, "result", 0, NULL, -32)) {
             psFree(md);
@@ -5210,4 +5228,8 @@
             exit(EXIT_FAILURE);
         }
+        if (strncmp(object->jobType, "a string", MAX_STRING_LENGTH)) {
+            psFree(object);
+            exit(EXIT_FAILURE);
+        }
         if (!object->result == -32) {
             psFree(object);
