Changeset: 11eb94ab18e3 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=11eb94ab18e3 Modified Files: sql/server/rel_dump.c sql/server/rel_select.c Branch: sq2default Log Message:
output/read new flags/properties in rel_dump add error message on missing group by diffs (48 lines): diff --git a/sql/server/rel_dump.c b/sql/server/rel_dump.c --- a/sql/server/rel_dump.c +++ b/sql/server/rel_dump.c @@ -1222,14 +1222,24 @@ exp_read(mvc *sql, sql_rel *lrel, sql_re if (f == cmp_in || f == cmp_notin) return exp_in(sql->sa, exp, exps, f); } else { + int sym = 0; + if (strncmp(r+*pos, "SYM", strlen("SYM")) == 0) { + (*pos)+= (int) strlen("SYM"); + skipWS(r,pos); + sym = 1; + } sql_exp *e = exp_read(sql, lrel, rrel, pexps, r, pos, 0); if (e && e->type == e_cmp) { sql_exp *ne = exp_compare2(sql->sa, e->l, exp, e->r, compare2range(swap_compare((comp_type)f), e->flag)); + if (sym) + ne->flag |= CMP_SYMMETRIC; if (is_anti(exp)) set_anti(ne); return ne; } else if (e) { sql_exp *ne = exp_compare(sql->sa, exp, e, f); + if (sym) + ne->flag |= CMP_SYMMETRIC; if (is_anti(exp)) set_anti(ne); return ne; diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c --- a/sql/server/rel_select.c +++ b/sql/server/rel_select.c @@ -3127,8 +3127,14 @@ static sql_exp * sql_rel *subquery = NULL; list *exps = NULL; - if (!groupby && !query_has_outer(query)) - return NULL; + if (!groupby && !query_has_outer(query)) { + char *uaname = GDKmalloc(strlen(aname) + 1); + sql_exp *e = sql_error(sql, 02, SQLSTATE(42000) "%s: missing group by", + uaname ? toUpperCopy(uaname, aname) : aname); + if (uaname) + GDKfree(uaname); + return e; + } if (is_sql_groupby(f)) { char *uaname = GDKmalloc(strlen(aname) + 1); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list