Changeset: a2ac2cbb0723 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/a2ac2cbb0723 Modified Files: gdk/gdk_group.c Branch: Jul2021 Log Message:
Merge with Oct2020 branch. diffs (43 lines): diff --git a/gdk/gdk_group.c b/gdk/gdk_group.c --- a/gdk/gdk_group.c +++ b/gdk/gdk_group.c @@ -670,6 +670,8 @@ BATgroup_internal(BAT **groups, BAT **ex maxgrp = g->tseqbase + BATcount(g); else if (BATtordered(g)) maxgrp = * (oid *) Tloc(g, BATcount(g) - 1); + else if (BATtrevordered(g)) + maxgrp = * (oid *) Tloc(g, 0); else { prop = BATgetprop(g, GDK_MAX_VALUE); if (prop) @@ -1118,15 +1120,21 @@ BATgroup_internal(BAT **groups, BAT **ex } else { nbucket = MAX(HASHmask(cnt), 1 << 16); } - switch (t) { - case TYPE_bte: - nbucket = 256; - break; - case TYPE_sht: - nbucket = 65536; - break; - default: - break; + if (grps == NULL || is_oid_nil(maxgrp) +#if SIZEOF_OID == SIZEOF_LNG + || maxgrp >= ((oid) 1 << (SIZEOF_LNG * 8 - 8)) +#endif + ) { + switch (t) { + case TYPE_bte: + nbucket = 256; + break; + case TYPE_sht: + nbucket = 65536; + break; + default: + break; + } } if ((hs = GDKzalloc(sizeof(Hash))) == NULL || (hs->heaplink.farmid = BBPselectfarm(TRANSIENT, b->ttype, hashheap)) < 0 || _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list