Source 'tag' in abs-file
[idzebra-moved-to-github.git] / index / extract.c
index a726916..713a90e 100644 (file)
@@ -3,7 +3,7 @@
  * All rights reserved.
  * Sebastian Hammer, Adam Dickmeiss
  *
- * $Id: extract.c,v 1.110 2002-02-20 17:30:01 adam Exp $
+ * $Id: extract.c,v 1.113 2002-03-15 20:20:55 adam Exp $
  */
 #include <stdio.h>
 #include <assert.h>
@@ -426,6 +426,7 @@ static int recordExtract (ZebraHandle zh,
        zh->keys.prevAttrUse = -1;
        zh->keys.prevAttrSet = -1;
        zh->keys.prevSeqNo = 0;
+       zh->sortKeys = 0;
        
        recordOffset = fi->file_moffset;
        extractCtrl.offset = fi->file_moffset;
@@ -855,7 +856,7 @@ int extract_rec_in_mem (ZebraHandle zh, const char *recordType,
     RecordAttr *recordAttr;
     struct recExtractCtrl extractCtrl;
     int i, r;
-    char *matchStr;
+    char *matchStr = 0;
     RecType recType;
     char subType[1024];
     void *clientData;
@@ -945,7 +946,6 @@ int extract_rec_in_mem (ZebraHandle zh, const char *recordType,
     }
     /* match criteria */
 
-
     if (! *sysno)
     {
         /* new record */
@@ -1152,8 +1152,6 @@ int explain_extract (void *handle, Record rec, data1_node *n)
     
     grs_extract_tree(&extractCtrl, n);
 
-    logf (LOG_LOG, "flush explain record, sysno=%d", rec->sysno);
-
     if (rec->size[recInfo_delKeys])
     {
        struct recKeys delkeys;
@@ -1403,7 +1401,7 @@ void extract_add_index_string (RecWord *p, const char *string,
         if (ch < 0)
         {
             ch = zebraExplain_addSU (zei, attrSet, attrUse);
-            yaz_log (LOG_LOG, "addSU set=%d use=%d SU=%d",
+            yaz_log (LOG_DEBUG, "addSU set=%d use=%d SU=%d",
                      attrSet, attrUse, ch);
         }
        assert (ch > 0);
@@ -1442,15 +1440,14 @@ static void extract_add_sort_string (RecWord *p, const char *string,
 {
     struct sortKey *sk;
     ZebraHandle zh = p->extractCtrl->handle;
-    struct sortKey *sortKeys = zh->sortKeys;
 
-    for (sk = sortKeys; sk; sk = sk->next)
+    for (sk = zh->sortKeys; sk; sk = sk->next)
        if (sk->attrSet == p->attrSet && sk->attrUse == p->attrUse)
            return;
 
     sk = (struct sortKey *) xmalloc (sizeof(*sk));
-    sk->next = sortKeys;
-    sortKeys = sk;
+    sk->next = zh->sortKeys;
+    zh->sortKeys = sk;
 
     sk->string = (char *) xmalloc (length);
     sk->length = length;