Changeset: e24c6c3c8889 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/e24c6c3c8889
Modified Files:
clients/Tests/MAL-signatures-hge.test
clients/Tests/MAL-signatures.test
clients/Tests/exports.stable.out
sql/server/rel_optimize_proj.c
Branch: pp_hashjoin
Log Message:
approved output
diffs (94 lines):
diff --git a/clients/Tests/MAL-signatures-hge.test
b/clients/Tests/MAL-signatures-hge.test
--- a/clients/Tests/MAL-signatures-hge.test
+++ b/clients/Tests/MAL-signatures-hge.test
@@ -269,6 +269,11 @@ command aggr.cardinality(X_0:bat[:any_2]
ALGcard
Return the cardinality of the BAT tail values.
aggr
+cde
+command aggr.cde(X_0:bat[:any_1]):int
+AGGRcde
+(empty)
+aggr
cnull
command aggr.cnull(X_0:bat[:oid], X_1:bat[:bit], X_2:ptr,
X_3:bat[:oid]):bat[:bit]
LALGcnull
diff --git a/clients/Tests/MAL-signatures.test
b/clients/Tests/MAL-signatures.test
--- a/clients/Tests/MAL-signatures.test
+++ b/clients/Tests/MAL-signatures.test
@@ -249,6 +249,11 @@ command aggr.cardinality(X_0:bat[:any_2]
ALGcard
Return the cardinality of the BAT tail values.
aggr
+cde
+command aggr.cde(X_0:bat[:any_1]):int
+AGGRcde
+(empty)
+aggr
cnull
command aggr.cnull(X_0:bat[:oid], X_1:bat[:bit], X_2:ptr,
X_3:bat[:oid]):bat[:bit]
LALGcnull
diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -465,6 +465,7 @@ size_t _MT_pagesize;
const union _dbl_nil_t _dbl_nil_;
const union _flt_nil_t _flt_nil_;
char *asctime_r(const struct tm *restrict, char *restrict);
+double bat_guess_uniques(BAT *b, BATiter *bi, struct canditer *bci);
ssize_t bitFromStr(allocator *ma, const char *src, size_t *len, bit **dst,
bool external);
ssize_t bitToStr(allocator *ma, str *dst, size_t *len, const bit *src, bool
external);
size_t blobsize(size_t nitems) __attribute__((__const__));
@@ -598,6 +599,8 @@ const ptr ptr_nil;
ssize_t shtFromStr(allocator *ma, const char *src, size_t *len, sht **dst,
bool external);
ssize_t shtToStr(allocator *ma, str *dst, size_t *len, const sht *src, bool
external);
const sht sht_nil;
+double sketch_estimate(uint8_t cnt_sketch[BUCKETS][CLZ_BUCKETS]);
+void sketch_populate(BAT *n, BATiter *ni, struct canditer *nci, uint8_t
cnting_sketch[BUCKETS][CLZ_BUCKETS]);
ssize_t sql_daytime_fromstr(allocator *ma, const char *buf, daytime *d, long
tz_sec, bool tzlocal);
ssize_t sql_timestamp_fromstr(allocator *ma, const char *buf, timestamp *d,
long tz_sec, bool tzlocal);
ssize_t strFromStr(allocator *ma, const char *restrict src, size_t *restrict
len, str *restrict dst, bool external);
diff --git a/sql/server/rel_optimize_proj.c b/sql/server/rel_optimize_proj.c
--- a/sql/server/rel_optimize_proj.c
+++ b/sql/server/rel_optimize_proj.c
@@ -2584,23 +2584,26 @@ rel_remove_const_aggr(visitor *v, sql_re
if (list_empty(se))
continue;
- int sum = strcmp(j->base.name, "sum") == 0,
- prd = strcmp(j->base.name, "prod") == 0,
- cnt = strcmp(j->base.name, "count") ==
0;
-
- //for (node *m = se->h; m; m = m->next) {
+ for (node *m = se->h; m; m = m->next) {
sql_exp *w = se->h->data;
-
- if (w->type == e_atom && w->card ==
CARD_ATOM) {
- atom *wa = w->l;
-
- if ((sum && !(wa->isnull ||
atom_is_zero(wa))) ||
+ if (w->type != e_atom || w->card !=
CARD_ATOM)
+ continue;
+ }
+ sql_exp *w = se->h->data;
+
+ if (w->type == e_atom && w->card == CARD_ATOM) {
+ int sum = strcmp(j->base.name, "sum")
== 0,
+ prd = strcmp(j->base.name,
"prod") == 0,
+ cnt = strcmp(j->base.name,
"count") == 0;
+
+ atom *wa = w->l;
+
+ if ((sum && !(wa->isnull ||
atom_is_zero(wa))) ||
(prd && !(wa->isnull ||
atom_is_one(wa))) ||
(cnt && !wa->isnull))
- continue;
- needed = true;
- }
- //}
+ continue;
+ needed = true;
+ }
}
}
if (!needed)
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]