Re: [Monetdb-developers] [Monetdb-pf-checkins] pathfinder/modules/pftijah pftijah.mx, 1.92.2.17, 1.92.2.18
roel, wat was hier eigenlijk aan de hand? eigenlijk hoef je "left" toch niet nog een keer te sorteren? "left" is toch altijd gesorteerd, of niet? -henning Roel van Os wrote:
Update of /cvsroot/monetdb/pathfinder/modules/pftijah In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv12912
Modified Files: Tag: XQuery_0-16 pftijah.mx Log Message: PF/Tijah: fix some sortedness issues. These only seem to occur on large-scale querying, not on the current Tests.
Index: pftijah.mx =================================================================== RCS file: /cvsroot/monetdb/pathfinder/modules/pftijah/pftijah.mx,v retrieving revision 1.92.2.17 retrieving revision 1.92.2.18 diff -u -d -r1.92.2.17 -r1.92.2.18 --- pftijah.mx 23 Feb 2007 09:10:04 -0000 1.92.2.17 +++ pftijah.mx 23 Feb 2007 12:12:57 -0000 1.92.2.18 @@ -1371,7 +1371,7 @@ }
- var ctx := region; + var ctx := region.sort(); var pre_size := load( "tj_" + collName + "_size1"); var desc := scj_desc( pre_size, ctx, count(pre_size) ); var result := nodes( desc ).project( dbl(scoreBase) ); @@ -1589,7 +1589,7 @@ var pre_size := bat("tj_" + collName + "_size" + ind);
# evaluate doc/term (anc/desc) relationship - var elem_tid := _containing_desc3(left.mark(0@0), pre_tid, pre_size); + var elem_tid := _containing_desc3(left.sort().mark(0@0), pre_tid, pre_size); pre_tid := nil; if (elem_tid.count() = 0) {return new(oid,dbl);}
@@ -1632,7 +1632,7 @@
# evaluate doc/term (anc/desc) relationship var t2 := time(); - var elem_tid := _containing_desc3(left.mark(0@0), pre_tid, pre_size); + var elem_tid := _containing_desc3(left.sort().mark(0@0), pre_tid, pre_size); var t3 := time(); pre_tid := nil; if (elem_tid.count() = 0) {return new(oid,dbl);} @@ -1679,7 +1679,7 @@
# evaluate doc/term (anc/desc) relationship var t2 := time(); - var elem_tid := _containing_desc(left.mark(0@0), pre_tid, pre_size); + var elem_tid := _containing_desc(left.sort().mark(0@0), pre_tid, pre_size); var t3 := time(); pre_tid := nil; if (elem_tid.count() = 0) {return new(oid,dbl);} @@ -1870,7 +1870,7 @@ var pre_size := bat("tj_" + collName + "_size1");
# See which document contain the query terms we create a bat of [doc, term-id]: - var doc_tid := _containing_desc(ctx.mark(0@0).sort(), tid_pre.reverse(), pre_size); + var doc_tid := _containing_desc(ctx.sort().mark(0@0), tid_pre.reverse(), pre_size);
# len(doc): [doc, size] var doc_len := [dbl](bat("tj_" + collName + "_size1").semijoin(doc_tid));
------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Monetdb-pf-checkins mailing list Monetdb-pf-checkins@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins
participants (1)
-
Henning Rode