Changeset 4404

Show
Ignore:
Timestamp:
Fri Jan 27 16:02:57 2006
Author:
mugur
Message:

fixed ticket:1678 - The article indexer doesn't work

Files:

Legend:

Unmodified
Added
Removed
Modified
  • branches/CAMPSITE_2_4_BRANCH/campsite/implementation/search/gather.cpp

    r4057 r4404  
    261 261          
    262 262             if (!kwd_id) {  
    263                   /* Get a new id */  
    264                   if (mysql_query(&mysql, "UPDATE AutoId SET KeywordId = LAST_INSERT_ID"  
    265                                   "(KeywordId + 1)") != 0)  
    266                       die_mysql(&mysql, "Obtaining new KeywordId: query");  
    267                   kwd_id = mysql_insert_id(&mysql);  
    268              
      263                 if (mysql_query(&mysql, "LOCK TABLE KeywordIndex WRITE"))  
      264                     die_mysql(&mysql, "Lock table KeywordIndex: query");  
      265                  
      266                 if (mysql_query(&mysql, "SELECT MAX(Id) from KeywordIndex"))  
      267                     die_mysql(&mysql, "Reading the last id: query");  
      268                  
      269                 res1 = mysql_store_result(&mysql);  
      270                 if (!res1)  
      271                     die_mysql(&mysql, "Read last id: store_result");  
      272                 row1 = mysql_fetch_row(res1);  
      273                  
    269 274                 /* Insert in keyword list */  
    270                   sprintf(query, "INSERT INTO KeywordIndex SET Keyword = '%s', Id = %u",  
    271                           p, kwd_id);  
      275                 sprintf(query, "INSERT INTO KeywordIndex SET Keyword = '%s', Id = %s + 1", p, row1[0]);  
    272 276                 debug("QUERY [%s]\n", query);  
      277                 mysql_free_result(res1);  
    273 278                 if (mysql_query(&mysql, query) != 0)  
    274 279                     die_mysql(&mysql, "Adding keyword: query");  
      280                  
      281                 if (mysql_query(&mysql, "UNLOCK TABLES"))  
      282                     die_mysql(&mysql, "Unlock table KeywordIndex: query");  
      283                  
    275 284                 nnew++;  
    276 285             }  
    303 312      
    304 313     }  
    305       if (nart > 0 && nword > 0 && nnew > 0)  
      314     if (nart > 0 || nword > 0 || nnew > 0)  
    305 314         printf("Instance %s: %u new articles, %u words processed, %u of them are new\n",  
    306 315             SQL_DATABASE.c_str(), nart, nword, nnew);