Changeset: 52dc0820cfa6 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=52dc0820cfa6 Modified Files: gdk/gdk_relop.mx monetdb5/mal/Tests/tst034.stable.out monetdb5/mal/Tests/tst274.stable.out.oid64 Branch: Oct2012 Log Message:
When doing a leftfetchjoin, also return a view if possible when doing propcheck. This way, leftfetchjoin returns a view consistently, independent of property checking. This means we can approve the tests that failed when property checking was on. diffs (61 lines): diff --git a/gdk/gdk_relop.mx b/gdk/gdk_relop.mx --- a/gdk/gdk_relop.mx +++ b/gdk/gdk_relop.mx @@ -968,14 +968,14 @@ batfetchjoin(BAT *l, BAT *r, BUN estimat return bn; @ @c - } else if (hitalways && BATtdense(l) && BAThdense(r) && l->tseqbase == r->hseqbase) { + } else if (BATtdense(l) && BAThdense(r) && l->tseqbase == r->hseqbase && BATcount(l) <= BATcount(r)) { /* always hit and tail of left is alligned with head * of right */ ALGODEBUG fprintf(stderr, "#BATfetchjoin: BATtdense(l) && BAThdense(r)\n"); ALGODEBUG fprintf(stderr, "#BATfetchjoin: VIEWcreate(l,r)\n"); return VIEWcreate(l, r); - } else if (hitalways && BAThdense(r) && BATtdense(r) && r->hseqbase == r->tseqbase) { + } else if (hitalways && BAThdense(r) && BATtdense(r) && r->hseqbase == r->tseqbase && BATcount(l) <= BATcount(r)) { /* idempotent join: always hit and substitute tail with the same value */ ALGODEBUG fprintf(stderr, "#BATfetchjoin: BAThdense(r) && BATtdense(r)\n"); ALGODEBUG fprintf(stderr, "#BATfetchjoin: VIEWcreate(l,l)\n"); diff --git a/monetdb5/mal/Tests/tst034.stable.out b/monetdb5/mal/Tests/tst034.stable.out --- a/monetdb5/mal/Tests/tst034.stable.out +++ b/monetdb5/mal/Tests/tst034.stable.out @@ -65,14 +65,14 @@ start of selections 5 [1] [ 1@0, 1 ] [ 2@0, 2 ] z select 1 [1] -select 5 [1] +select 6 [1] #-----------------# # h t # name # int int # type #-----------------# [ 0@0, 0 ] [ 1@0, 1 ] -select 5 [1] +select 6 [1] #-----------------# # h t # name # int int # type diff --git a/monetdb5/mal/Tests/tst274.stable.out.oid64 b/monetdb5/mal/Tests/tst274.stable.out.oid64 --- a/monetdb5/mal/Tests/tst274.stable.out.oid64 +++ b/monetdb5/mal/Tests/tst274.stable.out.oid64 @@ -66,7 +66,7 @@ end main; [ 1@0, 0 ] [ 2@0, 0 ] [ 3@0, 0 ] -[ 4@0, 160000 ] +[ 4@0, 0 ] [ 5@0, 0 ] [ 6@0, 0 ] #-----------------# @@ -88,7 +88,7 @@ end main; [ 1@0, 0, 160000 ] [ 2@0, 0, 0 ] [ 3@0, 0, 0 ] -[ 4@0, 160000, 160000 ] +[ 4@0, 0, 160000 ] [ 5@0, 0, 160000 ] [ 6@0, 0, 0 ] _______________________________________________ Checkin-list mailing list Checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list