[tracker] libtracker-fts: Fix reading rank and offset information



commit 0aa2aed3157774662107c2874b8905306d89d291
Author: Jürg Billeter <j bitron ch>
Date:   Thu Oct 8 11:46:24 2009 +0200

    libtracker-fts: Fix reading rank and offset information

 src/libtracker-fts/tracker-fts.c |   16 ++++++++++------
 1 files changed, 10 insertions(+), 6 deletions(-)
---
diff --git a/src/libtracker-fts/tracker-fts.c b/src/libtracker-fts/tracker-fts.c
index 4e0106e..fd713ab 100644
--- a/src/libtracker-fts/tracker-fts.c
+++ b/src/libtracker-fts/tracker-fts.c
@@ -450,6 +450,8 @@ typedef enum DocListType {
 # define DL_DEFAULT DL_POSITIONS
 #endif
 
+#define RANK
+
 enum {
   POS_END = 0,        /* end of this position list */
   POS_COLUMN,         /* followed by new column number */
@@ -944,6 +946,7 @@ static void dlwCopy(DLWriter *pWriter, DLReader *pReader){
 }
 
 
+#ifndef RANK
 #ifdef STORE_CATEGORY    
 static void dlwAdd(DLWriter *pWriter, sqlite_int64 iDocid, int Catid){
   char c[VARINT_MAX];
@@ -981,6 +984,7 @@ static void dlwAdd(DLWriter *pWriter, sqlite_int64 iDocid){
 }
 
 #endif
+#endif
 
 /*******************************************************************/
 /* PLReader is used to read data from a document's position list.  As
@@ -1874,7 +1878,7 @@ static void docListPhraseMerge(
 ** Write the intersection of these two doclists into pOut as a
 ** DL_DOCIDS doclist.
 */
-#ifdef STORE_CATEGORY
+#ifdef RANK
 static void docListAndMerge(
   const char *pLeft, int nLeft,
   const char *pRight, int nRight,
@@ -1947,7 +1951,7 @@ static void docListAndMerge(
 ** DL_DOCIDS doclist.
 */
 
-#ifdef STORE_CATEGORY        
+#ifdef RANK
 static void docListOrMerge(
   const char *pLeft, int nLeft,
   const char *pRight, int nRight,
@@ -2068,7 +2072,7 @@ static void docListOrMerge(
 ** Write into pOut as DL_DOCIDS doclist containing all documents that
 ** occur in pLeft but not in pRight.
 */
-#ifdef STORE_CATEGORY   
+#ifdef RANK
 static void docListExceptMerge(
   const char *pLeft, int nLeft,
   const char *pRight, int nRight,
@@ -4259,7 +4263,7 @@ static int docListOfTerm(
 
   dataBufferInit(&left, 0);
   
-  #ifdef STORE_CATEGORY
+  #ifdef RANK
   rc = termSelect(v, iColumn, pQTerm->pTerm, pQTerm->nTerm, pQTerm->isPrefix,
                   DL_POSITIONS, &left);
   #else
@@ -4289,7 +4293,7 @@ static int docListOfTerm(
     }
     dataBufferInit(&new, 0);
 
-    #ifdef STORE_CATEGORY
+    #ifdef RANK
     docListPhraseMerge(left.pData, left.nData, right.pData, right.nData,
                        pQTerm[i-1].nNear, pQTerm[i-1].iPhrase + nPhraseRight,
                        DL_POSITIONS,
@@ -4727,7 +4731,7 @@ static int fulltextFilter(
       if( rc!=SQLITE_OK ) return rc;
       if( c->result.nData!=0 ){
 
-#ifdef STORE_CATEGORY
+#ifdef RANK
         dlrInit(&c->reader, DL_POSITIONS, c->result.pData, c->result.nData);
 #else      
         dlrInit(&c->reader, DL_DOCIDS, c->result.pData, c->result.nData);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]