Changeset: 6b63d2aa3a24 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/6b63d2aa3a24
Modified Files:
        gdk/gdk_join.c
Branch: default
Log Message:

Avoid hash with candidate list for masked candidate lists.
For each match we would need to call canditer_idx which needs to
search the bitmask (counting set bits).


diffs (18 lines):

diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c
--- a/gdk/gdk_join.c
+++ b/gdk/gdk_join.c
@@ -3164,10 +3164,12 @@ joincost(BAT *r, struct canditer *lci, s
 #endif
                        rcost += BATcount(r) * 2.0;
        }
-       if (rci->ncand != BATcount(r)) {
+       if (rci->ncand != BATcount(r) && rci->tpe != cand_mask) {
                /* instead of using the hash on r (cost in rcost), we
                 * can build a new hash on r taking the candidate list
-                * into account */
+                * into account; don't do this for masked candidate
+                * since the searching of the candidate list
+                * (canditer_idx) will kill us */
                double rccost;
                PROPrec *prop = BATgetprop(r, GDK_NUNIQUE);
                if (prop) {
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to