Index: trunk/ippdb/src/ippdb.c
===================================================================
--- trunk/ippdb/src/ippdb.c	(revision 16587)
+++ trunk/ippdb/src/ippdb.c	(revision 16616)
@@ -24789,5 +24789,5 @@
 static void pstampDataStoreRowFree(pstampDataStoreRow *object);
 
-pstampDataStoreRow *pstampDataStoreRowAlloc(psS64 ds_id, const char *uri, const char *lastFileset, const char *state)
+pstampDataStoreRow *pstampDataStoreRowAlloc(psS64 ds_id, const char *state, const char *lastFileset, const char *outProduct, const char *uri)
 {
     pstampDataStoreRow *_object;
@@ -24797,7 +24797,8 @@
 
     _object->ds_id = ds_id;
+    _object->state = psStringCopy(state);
+    _object->lastFileset = psStringCopy(lastFileset);
+    _object->outProduct = psStringCopy(outProduct);
     _object->uri = psStringCopy(uri);
-    _object->lastFileset = psStringCopy(lastFileset);
-    _object->state = psStringCopy(state);
 
     return _object;
@@ -24806,7 +24807,8 @@
 static void pstampDataStoreRowFree(pstampDataStoreRow *object)
 {
+    psFree(object->state);
+    psFree(object->lastFileset);
+    psFree(object->outProduct);
     psFree(object->uri);
-    psFree(object->lastFileset);
-    psFree(object->state);
 }
 
@@ -24819,4 +24821,19 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, NULL, "64")) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item state");
+        psFree(md);
+        return false;
+    }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "lastFileset", PS_DATA_STRING, NULL, "64")) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item lastFileset");
+        psFree(md);
+        return false;
+    }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "outProduct", PS_DATA_STRING, "UNIQUE", "64")) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item outProduct");
+        psFree(md);
+        return false;
+    }
     if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, "255")) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item uri");
@@ -24824,14 +24841,4 @@
         return false;
     }
-    if (!psMetadataAdd(md, PS_LIST_TAIL, "lastFileset", PS_DATA_STRING, NULL, "64")) {
-        psError(PS_ERR_UNKNOWN, false, "failed to add item lastFileset");
-        psFree(md);
-        return false;
-    }
-    if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, NULL, "64")) {
-        psError(PS_ERR_UNKNOWN, false, "failed to add item state");
-        psFree(md);
-        return false;
-    }
 
     bool status = psDBCreateTable(dbh, PSTAMPDATASTORE_TABLE_NAME, md);
@@ -24847,5 +24854,5 @@
 }
 
-bool pstampDataStoreInsert(psDB * dbh, psS64 ds_id, const char *uri, const char *lastFileset, const char *state)
+bool pstampDataStoreInsert(psDB * dbh, psS64 ds_id, const char *state, const char *lastFileset, const char *outProduct, const char *uri)
 {
     psMetadata *md = psMetadataAlloc();
@@ -24855,16 +24862,21 @@
         return false;
     }
+    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, "lastFileset", PS_DATA_STRING, NULL, lastFileset)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item lastFileset");
+        psFree(md);
+        return false;
+    }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "outProduct", PS_DATA_STRING, NULL, outProduct)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item outProduct");
+        psFree(md);
+        return false;
+    }
     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, "lastFileset", PS_DATA_STRING, NULL, lastFileset)) {
-        psError(PS_ERR_UNKNOWN, false, "failed to add item lastFileset");
-        psFree(md);
-        return false;
-    }
-    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;
@@ -24893,5 +24905,5 @@
 bool pstampDataStoreInsertObject(psDB *dbh, pstampDataStoreRow *object)
 {
-    return pstampDataStoreInsert(dbh, object->ds_id, object->uri, object->lastFileset, object->state);
+    return pstampDataStoreInsert(dbh, object->ds_id, object->state, object->lastFileset, object->outProduct, object->uri);
 }
 
@@ -24971,4 +24983,19 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, NULL, object->state)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item state");
+        psFree(md);
+        return false;
+    }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "lastFileset", PS_DATA_STRING, NULL, object->lastFileset)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item lastFileset");
+        psFree(md);
+        return false;
+    }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "outProduct", PS_DATA_STRING, NULL, object->outProduct)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item outProduct");
+        psFree(md);
+        return false;
+    }
     if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item uri");
@@ -24976,14 +25003,4 @@
         return false;
     }
-    if (!psMetadataAdd(md, PS_LIST_TAIL, "lastFileset", PS_DATA_STRING, NULL, object->lastFileset)) {
-        psError(PS_ERR_UNKNOWN, false, "failed to add item lastFileset");
-        psFree(md);
-        return false;
-    }
-    if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, NULL, object->state)) {
-        psError(PS_ERR_UNKNOWN, false, "failed to add item state");
-        psFree(md);
-        return false;
-    }
 
 
@@ -25000,4 +25017,19 @@
         return false;
     }
+    char* state = psMetadataLookupPtr(&status, md, "state");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item state");
+        return false;
+    }
+    char* lastFileset = psMetadataLookupPtr(&status, md, "lastFileset");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item lastFileset");
+        return false;
+    }
+    char* outProduct = psMetadataLookupPtr(&status, md, "outProduct");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item outProduct");
+        return false;
+    }
     char* uri = psMetadataLookupPtr(&status, md, "uri");
     if (!status) {
@@ -25005,16 +25037,6 @@
         return false;
     }
-    char* lastFileset = psMetadataLookupPtr(&status, md, "lastFileset");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item lastFileset");
-        return false;
-    }
-    char* state = psMetadataLookupPtr(&status, md, "state");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item state");
-        return false;
-    }
-
-    return pstampDataStoreRowAlloc(ds_id, uri, lastFileset, state);
+
+    return pstampDataStoreRowAlloc(ds_id, state, lastFileset, outProduct, uri);
 }
 psArray *pstampDataStoreSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
@@ -25134,5 +25156,5 @@
 static void pstampRequestRowFree(pstampRequestRow *object);
 
-pstampRequestRow *pstampRequestRowAlloc(psS64 req_id, psS64 ds_id, const char *state, const char *uri)
+pstampRequestRow *pstampRequestRowAlloc(psS64 req_id, psS64 ds_id, const char *state, const char *outFileset, const char *uri)
 {
     pstampRequestRow *_object;
@@ -25144,4 +25166,5 @@
     _object->ds_id = ds_id;
     _object->state = psStringCopy(state);
+    _object->outFileset = psStringCopy(outFileset);
     _object->uri = psStringCopy(uri);
 
@@ -25152,4 +25175,5 @@
 {
     psFree(object->state);
+    psFree(object->outFileset);
     psFree(object->uri);
 }
@@ -25173,4 +25197,9 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "outFileset", PS_DATA_STRING, "UNIQUE", "64")) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item outFileset");
+        psFree(md);
+        return false;
+    }
     if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, "255")) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item uri");
@@ -25191,5 +25220,5 @@
 }
 
-bool pstampRequestInsert(psDB * dbh, psS64 req_id, psS64 ds_id, const char *state, const char *uri)
+bool pstampRequestInsert(psDB * dbh, psS64 req_id, psS64 ds_id, const char *state, const char *outFileset, const char *uri)
 {
     psMetadata *md = psMetadataAlloc();
@@ -25206,4 +25235,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, "outFileset", PS_DATA_STRING, NULL, outFileset)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item outFileset");
         psFree(md);
         return false;
@@ -25237,5 +25271,5 @@
 bool pstampRequestInsertObject(psDB *dbh, pstampRequestRow *object)
 {
-    return pstampRequestInsert(dbh, object->req_id, object->ds_id, object->state, object->uri);
+    return pstampRequestInsert(dbh, object->req_id, object->ds_id, object->state, object->outFileset, object->uri);
 }
 
@@ -25325,4 +25359,9 @@
         return false;
     }
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "outFileset", PS_DATA_STRING, NULL, object->outFileset)) {
+        psError(PS_ERR_UNKNOWN, false, "failed to add item outFileset");
+        psFree(md);
+        return false;
+    }
     if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item uri");
@@ -25354,4 +25393,9 @@
         return false;
     }
+    char* outFileset = psMetadataLookupPtr(&status, md, "outFileset");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item outFileset");
+        return false;
+    }
     char* uri = psMetadataLookupPtr(&status, md, "uri");
     if (!status) {
@@ -25360,5 +25404,5 @@
     }
 
-    return pstampRequestRowAlloc(req_id, ds_id, state, uri);
+    return pstampRequestRowAlloc(req_id, ds_id, state, outFileset, uri);
 }
 psArray *pstampRequestSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
