MonetDB: Jul2017 - Fix potential leak.

2017-10-17 Thread Sjoerd Mullender
Changeset: 50a372483a6e for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=50a372483a6e
Modified Files:
sql/backends/monet5/sql_user.c
Branch: Jul2017
Log Message:

Fix potential leak.


diffs (11 lines):

diff --git a/sql/backends/monet5/sql_user.c b/sql/backends/monet5/sql_user.c
--- a/sql/backends/monet5/sql_user.c
+++ b/sql/backends/monet5/sql_user.c
@@ -512,6 +512,7 @@ monet5_user_set_def_schema(mvc *m, oid u
if (!schema || !mvc_set_schema(m, schema)) {
if (m->session->active)
mvc_rollback(m, 0, NULL);
+   GDKfree(username);
return NULL;
}
/* reset the user and schema names */
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Jul2017 - fixed bug 6431

2017-10-17 Thread Niels Nes
Changeset: 7d459ebe5c26 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7d459ebe5c26
Added Files:

sql/test/BugTracker-2017/Tests/sqlitelogictest-aggregation-distinct-coalesce.Bug-6431.stable.err

sql/test/BugTracker-2017/Tests/sqlitelogictest-aggregation-distinct-coalesce.Bug-6431.stable.out
Modified Files:
sql/server/rel_select.c

sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
sql/test/LSST/Tests/dbQuery036.stable.err
sql/test/Tests/marcin3.stable.err
Branch: Jul2017
Log Message:

fixed bug 6431


diffs (180 lines):

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
@@ -1025,7 +1025,7 @@ rel_column_ref(mvc *sql, sql_rel **rel, 
return rel_var_ref(sql, name, 0);
}
if (!exp && !var) {
-   if (rel && *rel && (*rel)->card == CARD_AGGR && f == 
sql_sel) {
+   if (rel && *rel && (*rel)->card <= CARD_AGGR && f == 
sql_sel) {
sql_rel *gb = *rel;
 
while(gb->l && !is_groupby(gb->op))
@@ -1033,6 +1033,8 @@ rel_column_ref(mvc *sql, sql_rel **rel, 
if (gb && gb->l && rel_bind_column(sql, gb->l, 
name, f)) 
return sql_error(sql, 02, "SELECT: 
cannot use non GROUP BY column '%s' in query results without an aggregate 
function", name);
}
+   if (f == sql_having)
+   return sql_error(sql, 02, "SELECT: cannot use 
non GROUP BY column '%s' in query results without an aggregate function", name);
return sql_error(sql, 02, "SELECT: identifier '%s' 
unknown", name);
}

@@ -1053,11 +1055,7 @@ rel_column_ref(mvc *sql, sql_rel **rel, 
*rel = rel_crossproduct(sql->sa, *rel, 
v, op_join);
else
*rel = v;
-   /*
-   exp = rel_bind_column(sql, *rel, cname, f);
-   if (!exp)
-   */
-   exp = rel_bind_column2(sql, *rel, 
tname, cname, f);
+   exp = rel_bind_column2(sql, *rel, tname, cname, 
f);
}
}
if (!exp) {
@@ -1069,6 +1067,8 @@ rel_column_ref(mvc *sql, sql_rel **rel, 
if (gb && is_groupby(gb->op) && gb->l && 
rel_bind_column2(sql, gb->l, tname, cname, f))
return sql_error(sql, 02, "SELECT: 
cannot use non GROUP BY column '%s.%s' in query results without an aggregate 
function", tname, cname);
}
+   if (f == sql_having)
+   return sql_error(sql, 02, "SELECT: cannot use 
non GROUP BY column '%s.%s' in query results without an aggregate function", 
tname, cname);
return sql_error(sql, 02, "42S22!SELECT: no such column 
'%s.%s'", tname, cname);
}
} else if (dlist_length(l) >= 3) {
@@ -4858,8 +4858,9 @@ rel_select_exp(mvc *sql, sql_rel *rel, S
if (sn->having) {
/* having implies group by, ie if not supplied do a group by */
if (rel->op != op_groupby)
-   rel = rel_groupby(sql,  rel, NULL);
+   rel = rel_groupby(sql, rel, NULL);
aggr = 1;
+   if (rel) set_processed(rel);
}
 
n = sn->selection->h;
diff --git 
a/sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
 
b/sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
--- 
a/sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
+++ 
b/sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
@@ -84,7 +84,7 @@ stderr of test 'count_with_order_by_and_
 
 MAPI  = (monetdb) /var/tmp/mtest-27483/.s.monetdb.35395
 QUERY = select count(subtotal) from bigramlex order by subtotal;
-ERROR = !SELECT: identifier 'subtotal' unknown
+ERROR = !SELECT: cannot use non GROUP BY column 'subtotal' in query results 
without an aggregate function
 
 # 18:44:11 >  
 # 18:44:11 >  Done.
diff --git 
a/sql/test/BugTracker-2017/Tests/sqlitelogictest-aggregation-distinct-coalesce.Bug-6431.stable.err
 
b/sql/test/BugTracker-2017/Tests/sqlitelogictest-aggregation-distinct-coalesce.Bug-6431.stable.err
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2017/Tests/sqlitelogictest-aggregation-distinct-coalesce.Bug-6431.stable.err
@@ -0,0 +1,37 @@
+stderr of test 'sqlitelogictest-agg

MonetDB: Jul2017 - no warnings

2017-10-17 Thread Hannes Muehleisen
Changeset: e5559912c6e8 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e5559912c6e8
Modified Files:
clients/R/Tests/deps-install.R
clients/R/Tests/install.R
Branch: Jul2017
Log Message:

no warnings


diffs (17 lines):

diff --git a/clients/R/Tests/deps-install.R b/clients/R/Tests/deps-install.R
--- a/clients/R/Tests/deps-install.R
+++ b/clients/R/Tests/deps-install.R
@@ -1,4 +1,5 @@
 # autoinstall DBI and digest, we need those to install MonetDB.R
+options(warn = -1)
 packages_required <- c("digest", "DBI")
 
 cat("#~BeginProfilingOutput~#\n", file=stderr())
diff --git a/clients/R/Tests/install.R b/clients/R/Tests/install.R
--- a/clients/R/Tests/install.R
+++ b/clients/R/Tests/install.R
@@ -1,3 +1,4 @@
+options(warn = -1)
 cat("#~BeginProfilingOutput~#\n", file=stderr())
 cat("#~BeginProfilingOutput~#\n", file=stdout())
 
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list