Index: trunk/ippdb/src/ippdb.c
===================================================================
--- trunk/ippdb/src/ippdb.c	(revision 14598)
+++ trunk/ippdb/src/ippdb.c	(revision 15003)
@@ -19293,5 +19293,5 @@
 static void magicInputSkyfileRowFree(magicInputSkyfileRow *object);
 
-magicInputSkyfileRow *magicInputSkyfileRowAlloc(psS64 magic_id, psS64 diff_id, psS32 node)
+magicInputSkyfileRow *magicInputSkyfileRowAlloc(psS64 magic_id, psS64 diff_id, const char *node)
 {
     magicInputSkyfileRow *_object;
@@ -19302,5 +19302,5 @@
     _object->magic_id = magic_id;
     _object->diff_id = diff_id;
-    _object->node = node;
+    _object->node = psStringCopy(node);
 
     return _object;
@@ -19309,4 +19309,5 @@
 static void magicInputSkyfileRowFree(magicInputSkyfileRow *object)
 {
+    psFree(object->node);
 }
 
@@ -19324,5 +19325,5 @@
         return false;
     }
-    if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_S32, "AUTO_INCREMENT INDEX(magic_id, node)", 0)) {
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, "INDEX(magic_id, node)", "64")) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item node");
         psFree(md);
@@ -19342,5 +19343,5 @@
 }
 
-bool magicInputSkyfileInsert(psDB * dbh, psS64 magic_id, psS64 diff_id, psS32 node)
+bool magicInputSkyfileInsert(psDB * dbh, psS64 magic_id, psS64 diff_id, const char *node)
 {
     psMetadata *md = psMetadataAlloc();
@@ -19355,5 +19356,5 @@
         return false;
     }
-    if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_S32, NULL, node)) {
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, node)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item node");
         psFree(md);
@@ -19466,5 +19467,5 @@
         return false;
     }
-    if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_S32, NULL, object->node)) {
+    if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, object->node)) {
         psError(PS_ERR_UNKNOWN, false, "failed to add item node");
         psFree(md);
@@ -19490,5 +19491,5 @@
         return false;
     }
-    psS32 node = psMetadataLookupS32(&status, md, "node");
+    char* node = psMetadataLookupPtr(&status, md, "node");
     if (!status) {
         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item node");
