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
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list