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