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

Reply via email to