Re: MonetDB: default - Use normal join code for thetajoin with == op...
On Fri, May 17, 2013 at 11:33:39AM +0200, Sjoerd Mullender wrote:
Changeset: f2c52e636835 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f2c52e636835 Modified Files: gdk/gdk_join.c Branch: default Log Message:
Use normal join code for thetajoin with == operator.
diffs (22 lines):
diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c --- a/gdk/gdk_join.c +++ b/gdk/gdk_join.c @@ -1720,11 +1720,17 @@ BATsubthetajoin(BAT **r1p, BAT **r2p, BA { BAT *r1, *r2;
- if (op[0] == '=' && ((op[1] == '=' && op[2] == 0) || op[2] == 0))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ~~~~~~~~~~ Sjoerd,
given the last predicate ("~"), the second ("^") seems obsolete to me.
Should the last one rather read "op[1] == 0", i.e., both op == "==" and op == "=" indicate an equality predicate?
Or should the last predicate be opmitted completely to accept only op = "==" as euality predicate?
Stefan
return BATsubjoin(r1p, r2p, l, r, sl, sr, estimate);
- *r1p = NULL; *r2p = NULL; if (joinparamcheck(l, r, sl, sr, "BATsubthetajoin") == GDK_FAIL) return GDK_FAIL;
- if (joininitresults(&r1, &r2, estimate != BUN_NONE ? estimate : sl ? BATcount(sl) : BATcount(l), "BATsubthetajoin") == GDK_FAIL)
- if (joininitresults(&r1, &r2,
estimate != BUN_NONE ? estimate :
(sl ? BATcount(sl) : BATcount(l)) * (sr ? BATcount(sr) : BATcount(r)),
return GDK_FAIL; *r1p = r1; *r2p = r2;"BATsubthetajoin") == GDK_FAIL)
checkin-list mailing list checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list
See changeset c1a95b2d9a1f.
On 2013-05-21 17:01, Stefan Manegold wrote:
On Fri, May 17, 2013 at 11:33:39AM +0200, Sjoerd Mullender wrote:
Changeset: f2c52e636835 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f2c52e636835 Modified Files: gdk/gdk_join.c Branch: default Log Message:
Use normal join code for thetajoin with == operator.
diffs (22 lines):
diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c --- a/gdk/gdk_join.c +++ b/gdk/gdk_join.c @@ -1720,11 +1720,17 @@ BATsubthetajoin(BAT **r1p, BAT **r2p, BA { BAT *r1, *r2;
- if (op[0] == '=' && ((op[1] == '=' && op[2] == 0) || op[2] == 0))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ~~~~~~~~~~
Sjoerd,
given the last predicate ("~"), the second ("^") seems obsolete to me.
Should the last one rather read "op[1] == 0", i.e., both op == "==" and op == "=" indicate an equality predicate?
Or should the last predicate be opmitted completely to accept only op = "==" as euality predicate?
Stefan
return BATsubjoin(r1p, r2p, l, r, sl, sr, estimate);
- *r1p = NULL; *r2p = NULL; if (joinparamcheck(l, r, sl, sr, "BATsubthetajoin") == GDK_FAIL) return GDK_FAIL;
- if (joininitresults(&r1, &r2, estimate != BUN_NONE ? estimate : sl ? BATcount(sl) : BATcount(l), "BATsubthetajoin") == GDK_FAIL)
- if (joininitresults(&r1, &r2,
estimate != BUN_NONE ? estimate :
(sl ? BATcount(sl) : BATcount(l)) * (sr ? BATcount(sr) : BATcount(r)),
return GDK_FAIL; *r1p = r1; *r2p = r2;"BATsubthetajoin") == GDK_FAIL)
checkin-list mailing list checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list
participants (2)
-
Sjoerd Mullender
-
Stefan Manegold