Changeset: de476170f340 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=de476170f340 Modified Files: gdk/gdk_join.c gdk/gdk_select.c Branch: default Log Message:
Added some comments and some ALGODEBUG prints for legacy interfaces. diffs (169 lines): diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c --- a/gdk/gdk_join.c +++ b/gdk/gdk_join.c @@ -2682,6 +2682,8 @@ BATproject(BAT *l, BAT *r) } /* backward compatible interfaces */ + +/* Return a subset of l where head elements occur as head element in r. */ BAT * BATsemijoin(BAT *l, BAT *r) { @@ -2775,13 +2777,24 @@ do_batjoin(BAT *l, BAT *r, int op, gdk_return (*thetajoin)(BAT **, BAT **, BAT *, BAT *, BAT *, BAT *, int, int, BUN), gdk_return (*bandjoin)(BAT **, BAT **, BAT *, BAT *, BAT *, BAT *, - const void *, const void *, int, int, BUN)) + const void *, const void *, int, int, BUN), + const char *name) { BAT *lmap, *rmap; BAT *res1, *res2; BAT *bn; gdk_return ret; + ALGODEBUG fprintf(stderr, "#Legacy %s(l=%s#" BUNFMT "[%s,%s]%s%s%s," + "r=%s#" BUNFMT "[%s,%s]%s%s%s)\n", name, + BATgetId(l), BATcount(l), ATOMname(l->htype), ATOMname(l->ttype), + BAThdense(l) ? "-hdense" : "", + l->tsorted ? "-sorted" : "", + l->trevsorted ? "-revsorted" : "", + BATgetId(r), BATcount(r), ATOMname(r->htype), ATOMname(r->ttype), + BAThdense(r) ? "-hdense" : "", + r->tsorted ? "-sorted" : "", + r->trevsorted ? "-revsorted" : ""); r = BATmirror(r); /* r is [any_3,any_2] */ if (!BAThdense(l) || !BAThdense(r)) { @@ -2854,7 +2867,8 @@ do_batjoin(BAT *l, BAT *r, int op, BAT * BATjoin(BAT *l, BAT *r, BUN estimate) { - return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, BATsubjoin, NULL, NULL); + return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, + BATsubjoin, NULL, NULL, "BATjoin"); } /* join [any_1,any_2] with [any_2,any_3], return [any_1,any_3]; @@ -2862,7 +2876,8 @@ BATjoin(BAT *l, BAT *r, BUN estimate) BAT * BATleftjoin(BAT *l, BAT *r, BUN estimate) { - return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, BATsubleftjoin, NULL, NULL); + return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, + BATsubleftjoin, NULL, NULL, "BATleftjoin"); } /* join [any_1,any_2] with [any_2,any_3], return [any_1,any_3] */ @@ -2870,8 +2885,10 @@ BAT * BATthetajoin(BAT *l, BAT *r, int op, BUN estimate) { if (op == JOIN_EQ) - return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, BATsubjoin, NULL, NULL); - return do_batjoin(l, r, op, NULL, NULL, 0, 0, estimate, NULL, BATsubthetajoin, NULL); + return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, + BATsubjoin, NULL, NULL, "BATthetajoin"); + return do_batjoin(l, r, op, NULL, NULL, 0, 0, estimate, NULL, + BATsubthetajoin, NULL, "BATthetajoin"); } /* join [any_1,any_2] with [any_2,any_3], return [any_1,any_3]; @@ -2879,7 +2896,8 @@ BATthetajoin(BAT *l, BAT *r, int op, BUN BAT * BATouterjoin(BAT *l, BAT *r, BUN estimate) { - return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, BATsubouterjoin, NULL, NULL); + return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, + BATsubouterjoin, NULL, NULL, "BATouterjoin"); } /* join [any_1,any_2] with [any_2,any_3], return [any_1,any_3]; @@ -2887,7 +2905,8 @@ BATouterjoin(BAT *l, BAT *r, BUN estimat BAT * BATleftfetchjoin(BAT *l, BAT *r, BUN estimate) { - return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, BATsubleftfetchjoin, NULL, NULL); + return do_batjoin(l, r, 0, NULL, NULL, 0, 0, estimate, + BATsubleftfetchjoin, NULL, NULL, "BATleftfetchjoin"); } BAT * @@ -2895,12 +2914,12 @@ BATantijoin(BAT *l, BAT *r) { return do_batjoin(l, r, JOIN_NE, NULL, NULL, 0, 0, (BUN) MIN((lng) BATcount(l) * BATcount(r), BUN_MAX), - NULL, BATsubthetajoin, NULL); + NULL, BATsubthetajoin, NULL, "BATantijoin"); } BAT * BATbandjoin(BAT *l, BAT *r, const void *c1, const void *c2, bit li, bit hi) { return do_batjoin(l, r, 0, c1, c2, li, hi, BUN_NONE, - NULL, NULL, BATsubbandjoin); + NULL, NULL, BATsubbandjoin, "BATbandjoin"); } diff --git a/gdk/gdk_select.c b/gdk/gdk_select.c --- a/gdk/gdk_select.c +++ b/gdk/gdk_select.c @@ -1425,13 +1425,23 @@ BATthetasubselect(BAT *b, BAT *s, const static BAT * BAT_select_(BAT *b, const void *tl, const void *th, - bit li, bit hi, bit tail, bit anti) + bit li, bit hi, bit tail, bit anti, const char *name) { BAT *bn; BAT *bn1 = NULL; BAT *map; BAT *b1; + ALGODEBUG fprintf(stderr, "#Legacy %s(b=%s#" BUNFMT "[%s,%s]%s%s%s," + "li=%s,hi=%s,tail=%s,anti=%s)\n", name, + BATgetId(b), BATcount(b), ATOMname(b->htype), ATOMname(b->ttype), + BAThdense(b) ? "-hdense" : "", + b->tsorted ? "-sorted" : "", + b->trevsorted ? "-revsorted" : "", + li ? "true" : "false", + hi ? "true" : "false", + tail ? "true" : "false", + anti ? "true" : "false"); BATcheck(b, "BAT_select_"); /* b is a [any_1,any_2] BAT */ if (!BAThdense(b)) { @@ -1533,27 +1543,31 @@ BAT_select_(BAT *b, const void *tl, cons BAT * BATselect_(BAT *b, const void *h, const void *t, bit li, bit hi) { - return BAT_select_(b, h, t, li, hi, TRUE, FALSE); + return BAT_select_(b, h, t, li, hi, TRUE, FALSE, "BATselect_"); } BAT * BATuselect_(BAT *b, const void *h, const void *t, bit li, bit hi) { - return BAT_select_(b, h, t, li, hi, FALSE, FALSE); + return BAT_select_(b, h, t, li, hi, FALSE, FALSE, "BATuselect_"); } BAT * BATantiuselect_(BAT *b, const void *h, const void *t, bit li, bit hi) { - return BAT_select_(b, h, t, li, hi, FALSE, TRUE); + return BAT_select_(b, h, t, li, hi, FALSE, TRUE, "BATantiuselect"); } +/* Return a BAT which is a subset of b with just the qualifying + * tuples. */ BAT * BATselect(BAT *b, const void *h, const void *t) { return BATselect_(b, h, t, TRUE, TRUE); } +/* Return a BAT with in its head a subset of qualifying tuples from + * the head of b, and void-nil in its tail. */ BAT * BATuselect(BAT *b, const void *h, const void *t) { _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list