Changeset: 32994a503e4d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/32994a503e4d
Modified Files:
        sql/storage/bat/bat_table.c
Branch: Jul2021
Log Message:

Small optimization, don't produce right join output if not used. Small cleanup


diffs (111 lines):

diff --git a/sql/storage/bat/bat_table.c b/sql/storage/bat/bat_table.c
--- a/sql/storage/bat/bat_table.c
+++ b/sql/storage/bat/bat_table.c
@@ -565,14 +565,13 @@ rids_empty(rids *r )
 static rids *
 rids_join(sql_trans *tr, rids *l, sql_column *lc, rids *r, sql_column *rc)
 {
-       BAT *lcb, *rcb, *s = NULL, *d = NULL;
+       BAT *lcb, *rcb, *s = NULL;
        gdk_return ret;
 
        lcb = full_column(tr, lc);
        rcb = full_column(tr, rc);
-       ret = BATjoin(&s, &d, lcb, rcb, l->data, r->data, false, BATcount(lcb));
+       ret = BATjoin(&s, NULL, lcb, rcb, l->data, r->data, false, 
BATcount(lcb));
        bat_destroy(l->data);
-       bat_destroy(d);
        if (ret != GDK_SUCCEED) {
                l->data = NULL;
        } else {
@@ -588,29 +587,26 @@ subrids_create(sql_trans *tr, rids *t1, 
 {
        /* join t1.rc with lc order by obc */
        subrids *r;
-       BAT *lcb, *rcb, *s, *obb, *d = NULL, *o, *g, *ids, *rids = NULL;
+       BAT *lcb, *rcb, *s, *obb, *o, *g, *ids, *rids = NULL;
        gdk_return ret;
 
        lcb = full_column(tr, lc);
        rcb = full_column(tr, rc);
        s = delta_cands(tr, lc->t);
        if (lcb == NULL || rcb == NULL || s == NULL) {
-               if (lcb)
-                       bat_destroy(lcb);
-               if (rcb)
-                       bat_destroy(rcb);
+               bat_destroy(lcb);
+               bat_destroy(rcb);
                bat_destroy(s);
                return NULL;
        }
 
-       ret = BATjoin(&rids, &d, lcb, rcb, s, t1->data, false, BATcount(lcb));
+       ret = BATjoin(&rids, NULL, lcb, rcb, s, t1->data, false, BATcount(lcb));
        bat_destroy(s);
        bat_destroy(rcb);
        if (ret != GDK_SUCCEED) {
                bat_destroy(lcb);
                return NULL;
        }
-       bat_destroy(d);
 
        s = BATproject(rids, lcb);
        bat_destroy(lcb);
@@ -671,8 +667,6 @@ subrids_create(sql_trans *tr, rids *t1, 
                bat_destroy(rids);
                return NULL;
        }
-       r->id = 0;
-       r->pos = 0;
        r->ids = ids;
        r->rids = rids;
        return r;
@@ -706,10 +700,8 @@ subrids_nextid(subrids *r)
 static void
 subrids_destroy(subrids *r )
 {
-       if (r->ids)
-               bat_destroy(r->ids);
-       if (r->rids)
-               bat_destroy(r->rids);
+       bat_destroy(r->ids);
+       bat_destroy(r->rids);
        _DELETE(r);
 }
 
@@ -717,15 +709,13 @@ subrids_destroy(subrids *r )
 static rids *
 rids_diff(sql_trans *tr, rids *l, sql_column *lc, subrids *r, sql_column *rc )
 {
-       BAT *lcb = full_column(tr, lc), *s, *d, *rids, *diff;
+       BAT *lcb = full_column(tr, lc), *s, *rids, *diff;
        BAT *rcb = full_column(tr, rc);
        gdk_return ret;
 
        if (lcb == NULL || rcb == NULL) {
-               if (lcb)
-                       bat_destroy(lcb);
-               if (rcb)
-                       bat_destroy(rcb);
+               bat_destroy(lcb);
+               bat_destroy(rcb);
                return NULL;
        }
        s = BATproject(r->rids, rcb);
@@ -751,14 +741,13 @@ rids_diff(sql_trans *tr, rids *l, sql_co
                return NULL;
        }
 
-       ret = BATjoin(&rids, &d, lcb, s, NULL, diff, false, BATcount(s));
+       ret = BATjoin(&rids, NULL, lcb, s, NULL, diff, false, BATcount(s));
        bat_destroy(diff);
        bat_destroy(lcb);
        bat_destroy(s);
        if (ret != GDK_SUCCEED)
                return NULL;
 
-       bat_destroy(d);
        bat_destroy(l->data);
        l->data = rids;
        return l;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to