Changeset: d32213caa34f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/d32213caa34f
Modified Files:
        gdk/gdk_logger.c
        gdk/gdk_select.c
        gdk/gdk_tm.c
        monetdb5/mal/mal_debugger.c
        monetdb5/mal/mal_listing.c
        monetdb5/mal/mal_profiler.c
        monetdb5/mal/mal_runtime.c
        monetdb5/modules/mal/remote.c
Branch: Jul2021
Log Message:

Use BBP_cache for parent bats and don't load complex atoms if we don't need to.


diffs (132 lines):

diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1408,7 +1408,7 @@ bm_get_counts(logger *lg)
                lng lid = lng_nil;
 
                if (BUNfnd(lg->dcatalog, &pos) == BUN_NONE) {
-                       BAT *b = BBPquickdesc(bids[p], 1);
+                       BAT *b = BBPquickdesc(bids[p], true);
                        cnt = BATcount(b);
                } else {
                        deleted++;
diff --git a/gdk/gdk_select.c b/gdk/gdk_select.c
--- a/gdk/gdk_select.c
+++ b/gdk/gdk_select.c
@@ -1521,7 +1521,7 @@ BATselect(BAT *b, BAT *s, const void *tl
                 * hash chain (count divided by #slots) times the cost
                 * to do a binary search on the candidate list (or 1
                 * if no need for search)) */
-               tmp = BBPquickdesc(parent, false);
+               tmp = BBP_cache(parent);
                if (tmp && BATcheckhash(tmp)) {
                        MT_rwlock_rdlock(&tmp->thashlock);
                        hash = phash = tmp->thash != NULL &&
@@ -1560,7 +1560,7 @@ BATselect(BAT *b, BAT *s, const void *tl
            (BATcheckorderidx(b) ||
             (/* DISABLES CODE */ (0) &&
              VIEWtparent(b) &&
-             BATcheckorderidx(BBPquickdesc(VIEWtparent(b), false))))) {
+             BATcheckorderidx(BBP_cache(VIEWtparent(b)))))) {
                BAT *view = NULL;
                if (/* DISABLES CODE */ (0) && VIEWtparent(b) && 
!BATcheckorderidx(b)) {
                        view = b;
@@ -1850,7 +1850,7 @@ BATselect(BAT *b, BAT *s, const void *tl
                        (!b->batTransient ||
                         (/* DISABLES CODE */ (0) &&
                          parent != 0 &&
-                         (tmp = BBPquickdesc(parent, false)) != NULL &&
+                         (tmp = BBP_cache(parent)) != NULL &&
                          !tmp->batTransient));
                bn = scanselect(b, &bi, &ci, bn, tl, th, li, hi, equi, anti,
                                lval, hval, lnil, maximum, use_imprints, &algo);
@@ -2035,7 +2035,7 @@ rangejoin(BAT *r1, BAT *r2, BAT *l, BAT 
        }
 
        if (!BATordered(l) && !BATordered_rev(l) &&
-           (BATcheckorderidx(l) || (/* DISABLES CODE */ (0) && VIEWtparent(l) 
&& BATcheckorderidx(BBPquickdesc(VIEWtparent(l), false))))) {
+           (BATcheckorderidx(l) || (/* DISABLES CODE */ (0) && VIEWtparent(l) 
&& BATcheckorderidx(BBP_cache(VIEWtparent(l)))))) {
                use_orderidx = true;
                if (/* DISABLES CODE */ (0) && VIEWtparent(l) && 
!BATcheckorderidx(l)) {
                        l = BBP_cache(VIEWtparent(l));
@@ -2166,7 +2166,7 @@ rangejoin(BAT *r1, BAT *r2, BAT *l, BAT 
                    !l->batTransient ||
                    (/* DISABLES CODE */ (0) &&
                     VIEWtparent(l) != 0 &&
-                    (tmp = BBPquickdesc(VIEWtparent(l), false)) != NULL &&
+                    (tmp = BBP_cache(VIEWtparent(l))) != NULL &&
                     !tmp->batTransient) ||
                    BATcheckimprints(l)) &&
                   BATimprints(l) == GDK_SUCCEED) {
diff --git a/gdk/gdk_tm.c b/gdk/gdk_tm.c
--- a/gdk/gdk_tm.c
+++ b/gdk/gdk_tm.c
@@ -106,7 +106,7 @@ epilogue(int cnt, bat *subcommit)
                        }
                }
                if ((BBP_status(bid) & BBPDELETED) && BBP_refs(bid) <= 0 && 
BBP_lrefs(bid) <= 0) {
-                       BAT *b = BBPquickdesc(bid, true);
+                       BAT *b = BBPquickdesc(bid, false);
 
                        /* the unloaded ones are deleted without
                         * loading deleted disk images */
diff --git a/monetdb5/mal/mal_debugger.c b/monetdb5/mal/mal_debugger.c
--- a/monetdb5/mal/mal_debugger.c
+++ b/monetdb5/mal/mal_debugger.c
@@ -138,7 +138,7 @@ printStackElm(stream *f, MalBlkPtr mb, V
 
        if (v && v->vtype == TYPE_bat) {
                bat i = v->val.bval;
-               BAT *b = BBPquickdesc(i, true);
+               BAT *b = BBPquickdesc(i, false);
 
                if (b) {
                        nme = getTypeName(newBatType(b->ttype));
diff --git a/monetdb5/mal/mal_listing.c b/monetdb5/mal/mal_listing.c
--- a/monetdb5/mal/mal_listing.c
+++ b/monetdb5/mal/mal_listing.c
@@ -142,7 +142,7 @@ renderTerm(MalBlkPtr mb, MalStkPtr stk, 
                                (isaBatType(getVarType(mb,varid)) && idx < 
p->retc);
 
                        if (stk && isaBatType(getVarType(mb,varid)) && 
stk->stk[varid].val.bval ){
-                               BAT *d= BBPquickdesc(stk->stk[varid].val.bval, 
true);
+                               BAT *d= BBPquickdesc(stk->stk[varid].val.bval, 
false);
                                if( d)
                                        len += snprintf(buf+len,maxlen-len,"[" 
BUNFMT "]", BATcount(d));
                        }
diff --git a/monetdb5/mal/mal_profiler.c b/monetdb5/mal/mal_profiler.c
--- a/monetdb5/mal/mal_profiler.c
+++ b/monetdb5/mal/mal_profiler.c
@@ -323,7 +323,7 @@ renderProfilerEvent(Client cntxt, MalBlk
                                        BAT *v;
                                        cnt = BATcount(d);
                                        if(isVIEW(d)){
-                                               v= BBPquickdesc(VIEWtparent(d), 
false);
+                                               v= BBP_cache(VIEWtparent(d));
                                                if (!logadd(&logbuf,
                                                                        
",\"view\":\"true\""
                                                                        
",\"parent\":%d"
diff --git a/monetdb5/mal/mal_runtime.c b/monetdb5/mal/mal_runtime.c
--- a/monetdb5/mal/mal_runtime.c
+++ b/monetdb5/mal/mal_runtime.c
@@ -471,7 +471,7 @@ lng getVolume(MalStkPtr stk, InstrPtr pc
                if (stk->stk[getArg(pci, i)].vtype == TYPE_bat) {
                        oid cnt = 0;
 
-                       b = BBPquickdesc(stk->stk[getArg(pci, i)].val.bval, 
true);
+                       b = BBPquickdesc(stk->stk[getArg(pci, i)].val.bval, 
false);
                        if (b == NULL)
                                continue;
                        cnt = BATcount(b);
diff --git a/monetdb5/modules/mal/remote.c b/monetdb5/modules/mal/remote.c
--- a/monetdb5/modules/mal/remote.c
+++ b/monetdb5/modules/mal/remote.c
@@ -1517,7 +1517,7 @@ static str RMTbincopyto(Client cntxt, Ma
                throw(MAL, "remote.bincopyto", MAL_MALLOC_FAIL);
 
        sendtheap = b->ttype != TYPE_void && b->tvarsized;
-       if (isVIEW(b) && sendtheap && VIEWvtparent(b) && BATcount(b) < 
BATcount(BBPquickdesc(VIEWvtparent(b), false)))
+       if (isVIEW(b) && sendtheap && VIEWvtparent(b) && BATcount(b) < 
BATcount(BBP_cache(VIEWvtparent(b))))
                v = COLcopy(b, b->ttype, true, TRANSIENT);
 
        mnstr_printf(cntxt->fdout, /*JSON*/"{"
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to