X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fzinfo.c;h=60ae41525924113307a7914ac535aeff2214cae0;hb=44082770642275dd993aa621d9dc5c5b0dc454d3;hp=c40e76e67e75fdfda9284c6b8b9c9682376454ec;hpb=9eebf93dc2525854867cbc43920ea8ba4a199ab5;p=idzebra-moved-to-github.git diff --git a/index/zinfo.c b/index/zinfo.c index c40e76e..60ae415 100644 --- a/index/zinfo.c +++ b/index/zinfo.c @@ -1,4 +1,4 @@ -/* $Id: zinfo.c,v 1.46 2005-06-23 06:45:46 adam Exp $ +/* $Id: zinfo.c,v 1.49 2005-08-18 12:50:18 adam Exp $ Copyright (C) 1995-2005 Index Data ApS @@ -373,7 +373,7 @@ ZebraExplainInfo zebraExplain_open ( 0, 0, 0, 0, 0, 0); } zdip = &zei->databaseInfo; - trec = rec_get (records, 1); /* get "root" record */ + trec = rec_get_root(records); /* get "root" record */ zei->ordinalSU = 1; zei->runNumber = 0; @@ -1309,7 +1309,7 @@ static void zebraExplain_writeTarget (ZebraExplainInfo zei, int key_flush) return; zei->dirty = 0; - trec = rec_get (zei->records, 1); + trec = rec_get_root(zei->records); xfree (trec->info[recInfo_storeData]); node_tgtinfo = data1_search_tag (zei->dh, zei->data1_target, @@ -1359,6 +1359,20 @@ static void zebraExplain_writeTarget (ZebraExplainInfo zei, int key_flush) rec_put (zei->records, &trec); } +int zebraExplain_lookup_attr_su_any_index(ZebraExplainInfo zei, + int set, int use) +{ + struct zebSUInfoB *zsui; + + assert (zei->curDatabaseInfo); + for (zsui = zei->curDatabaseInfo->attributeDetails->SUInfo; + zsui; zsui=zsui->next) + if (zsui->info.which == ZEB_SU_SET_USE && + zsui->info.u.su.use == use && zsui->info.u.su.set == set) + return zsui->info.ordinal; + return -1; +} + int zebraExplain_lookup_attr_su(ZebraExplainInfo zei, int index_type, int set, int use) { @@ -1548,6 +1562,7 @@ RecordAttr *rec_init_attr (ZebraExplainInfo zei, Record rec) recordAttr->recordSize = 0; recordAttr->recordOffset = 0; recordAttr->runNumber = zei->runNumber; + recordAttr->staticrank = 0; return recordAttr; }