Changeset: 6dafd0114ca6 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6dafd0114ca6 Modified Files: monetdb5/modules/kernel/arrays.c Branch: arrays Log Message:
dimensionLeftfetchjoin: set properties directly without using BATderiveProps diffs (45 lines): diff --git a/monetdb5/modules/kernel/arrays.c b/monetdb5/modules/kernel/arrays.c --- a/monetdb5/modules/kernel/arrays.c +++ b/monetdb5/modules/kernel/arrays.c @@ -503,17 +503,31 @@ do { \ default: throw(MAL, "algebra.dimensionLeftfetchjoin", "Dimension type not supported\n"); } + + BATsetcount(resBAT, resSize); + BATseqbase(resBAT, 0); + //BATderiveProps(resBAT, FALSE); + + resBAT->hseqbase = 0; + resBAT->hkey = 1; + resBAT->hsorted = 1; + resBAT->hrevsorted = (BATcount(resBAT) <= 1); + resBAT->H->nonil = 1; + resBAT->H->nil = 0; + + resBAT->tkey = 0; + resBAT->tsorted = (grpR == 1); //if there are more than one groups then the values are repeated and thus, are not sorted + resBAT->trevsorted = (BATcount(resBAT) <= 1); + resBAT->T->nil = 0; + resBAT->T->nonil = 1; + resBAT->tdense = ((grpR == 1) & (elsR == 1)); //each element is repeated once and there is only one group + + *result = resBAT->batCacheid; + BBPkeepref(*result); + + return MAL_SUCCEED; + } - - BATsetcount(resBAT, resSize); - BATseqbase(resBAT, 0); - BATderiveProps(resBAT, FALSE); - - *result = resBAT->batCacheid; - BBPkeepref(*result); - - return MAL_SUCCEED; - } str ALGdimensionLeftfetchjoin2(bat *result, const bat *oidsCands, const ptr *dimsCands, const ptr *dim, const ptr *dims) { _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list