Changeset: 2d050aaf8a46 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/2d050aaf8a46
Modified Files:
gdk/gdk_join.c
Branch: Sep2022
Log Message:
Merge with Jan2022 branch.
diffs (51 lines):
diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c
--- a/gdk/gdk_join.c
+++ b/gdk/gdk_join.c
@@ -2662,6 +2662,9 @@ hashjoin(BAT **r1p, BAT **r2p, BAT *l, B
bool lskipped = false; /* whether we skipped values in l */
Hash *restrict hsh = NULL;
bool locked = false;
+ BUN maxsize;
+ BAT *r1 = NULL;
+ BAT *r2 = NULL;
assert(ATOMtype(l->ttype) == ATOMtype(r->ttype));
@@ -2697,19 +2700,6 @@ hashjoin(BAT **r1p, BAT **r2p, BAT *l, B
nil_on_miss, only_misses, __func__, t0);
}
- BUN maxsize = joininitresults(r1p, r2p, lci->ncand, rci->ncand,
- li.key, ri.key, semi | max_one,
- nil_on_miss, only_misses, min_one,
- estimate);
- if (maxsize == BUN_NONE) {
- bat_iterator_end(&li);
- bat_iterator_end(&ri);
- return GDK_FAIL;
- }
-
- BAT *r1 = *r1p;
- BAT *r2 = r2p ? *r2p : NULL;
-
rl = rci->seq - r->hseqbase;
rh = canditer_last(rci) + 1 - r->hseqbase;
if (hash_cand) {
@@ -2819,6 +2809,17 @@ hashjoin(BAT **r1p, BAT **r2p, BAT *l, B
}
}
+ maxsize = joininitresults(r1p, r2p, lci->ncand, rci->ncand,
+ li.key, ri.key, semi | max_one,
+ nil_on_miss, only_misses, min_one,
+ estimate);
+ if (maxsize == BUN_NONE) {
+ goto bailout;
+ }
+
+ r1 = *r1p;
+ r2 = r2p ? *r2p : NULL;
+
/* basic properties will be adjusted if necessary later on,
* they were initially set by joininitresults() */
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]