Changeset: bf1a803ee260 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=bf1a803ee260 Modified Files: .hgtags MonetDB.spec NT/monetdb_config.h.in NT/rules.msc clients/mapilib/mapi.rc clients/odbc/driver/driver.rc clients/odbc/winsetup/setup.rc configure.ag debian/changelog gdk/libbat.rc libversions monetdb5/tools/libmonetdb5.rc sql/server/rel_select.c sql/storage/store.c sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.sql sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.stable.out vertoo.data Branch: default Log Message:
Merged with linear-hashing diffs (184 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -750,3 +750,5 @@ e0719bdebf32967ca0a0043f556b3f48f93e0ce0 8d4258444e2a0a809468fb85be7999a407d47e04 Nov2019_9 e0719bdebf32967ca0a0043f556b3f48f93e0ce0 Nov2019_SP1_release 8d4258444e2a0a809468fb85be7999a407d47e04 Nov2019_SP1_release +c35ea84b568b792c5fd073f6a1e1a24372de0e20 Nov2019_11 +c35ea84b568b792c5fd073f6a1e1a24372de0e20 Nov2019_SP2_release diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -105,7 +105,7 @@ Group: Applications/Databases License: MPLv2.0 URL: https://www.monetdb.org/ BugURL: https://bugs.monetdb.org/ -Source: https://www.monetdb.org/downloads/sources/Nov2019-SP1/%{name}-%{version}.tar.bz2 +Source: https://www.monetdb.org/downloads/sources/Nov2019-SP2/%{name}-%{version}.tar.bz2 # we need systemd for the _unitdir macro to exist # we need checkpolicy and selinux-policy-devel for the SELinux policy @@ -941,6 +941,15 @@ fi %postun -p /sbin/ldconfig %changelog +* Tue Feb 11 2020 Sjoerd Mullender <sjo...@acm.org> - 11.35.11-20200211 +- Rebuilt. +- BZ#6805: Using the cascade operator in a drop table statement ends in + an exit from the Monetdb shell. +- BZ#6807: Median_avg and quantile_avg ignore NULL values +- BZ#6815: query with ifthenelse() crashes mserver5 +- BZ#6816: Monetdb Crashes on INSERT statement after ALTER statement in + another connection + * Wed Dec 18 2019 Sjoerd Mullender <sjo...@acm.org> - 11.35.9-20191218 - Rebuilt. - BZ#6804: DNS resolution of 0.0.0.0 fails on recent Ubuntus diff --git a/debian/changelog b/debian/changelog --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,15 @@ +monetdb (11.35.11) unstable; urgency=low + + * Rebuilt. + * BZ#6805: Using the cascade operator in a drop table statement ends in + an exit from the Monetdb shell. + * BZ#6807: Median_avg and quantile_avg ignore NULL values + * BZ#6815: query with ifthenelse() crashes mserver5 + * BZ#6816: Monetdb Crashes on INSERT statement after ALTER statement in + another connection + + -- Sjoerd Mullender <sjo...@acm.org> Tue, 11 Feb 2020 14:07:49 +0100 + monetdb (11.35.9) unstable; urgency=low * Rebuilt. diff --git a/libversions b/libversions --- a/libversions +++ b/libversions @@ -36,13 +36,13 @@ # version of the GDK library (subdirectory gdk; also includes # common/options and common/utils) -GDK_VERSION=19:2:0 +GDK_VERSION=19:3:0 # version of the MAPI library (subdirectory clients/mapilib) -MAPI_VERSION=12:2:0 +MAPI_VERSION=12:3:0 # version of the MONETDB5 library (subdirectory monetdb5, not including extras or sql) -MONETDB5_VERSION=28:3:0 +MONETDB5_VERSION=28:4:0 # version of the STREAM library (subdirectory common/stream) STREAM_VERSION=13:3:0 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 @@ -675,10 +675,10 @@ rel_named_table_function(sql_query *quer } if (sq) { - for (node *n = sq->exps->h, *m = sf->res->h ; n && m ; n = n->next, m = m->next) { + for (node *n = sq->exps->h, *m = sf->func->ops->h ; n && m ; n = n->next, m = m->next) { sql_exp *e = (sql_exp*) n->data; - sql_subtype *t = (sql_subtype*) m->data; - if (!exp_subtype(e) && rel_set_type_param(sql, t, sq, e, 0) < 0) + sql_arg *a = (sql_arg*) m->data; + if (!exp_subtype(e) && rel_set_type_param(sql, &(a->type), sq, e, 0) < 0) return NULL; } } @@ -6023,10 +6023,10 @@ rel_loader_function(sql_query *query, sy return sql_error(sql, 02, SQLSTATE(42000) "SELECT: no such operator '%s'", fname); if (sq) { - for (node *n = sq->exps->h, *m = sf->res->h ; n && m ; n = n->next, m = m->next) { + for (node *n = sq->exps->h, *m = sf->func->ops->h ; n && m ; n = n->next, m = m->next) { sql_exp *e = (sql_exp*) n->data; - sql_subtype *t = (sql_subtype*) m->data; - if (!exp_subtype(e) && rel_set_type_param(sql, t, sq, e, 0) < 0) + sql_arg *a = (sql_arg*) m->data; + if (!exp_subtype(e) && rel_set_type_param(sql, &(a->type), sq, e, 0) < 0) return NULL; } } diff --git a/sql/storage/store.c b/sql/storage/store.c --- a/sql/storage/store.c +++ b/sql/storage/store.c @@ -3012,10 +3012,10 @@ sql_trans_copy_part( sql_trans *tr, sql_ base_init(tr->sa, &npt->base, pt->base.id, TR_NEW, npt->base.name); - if (isNonPartitionedTable(t)) + if (isRangePartitionTable(t) || isListPartitionTable(t)) + dup_sql_type(tr, t->s, &(pt->tpe), &(npt->tpe)); + else npt->tpe = pt->tpe; - else - dup_sql_type(tr, t->s, &(pt->tpe), &(npt->tpe)); npt->with_nills = pt->with_nills; npt->t = t; @@ -3131,10 +3131,10 @@ part_dup(sql_trans *tr, int flags, sql_p sql_table *pt = find_sql_table(mt->s, op->base.name); base_init(sa, &p->base, op->base.id, tr_flag(&op->base, flags), op->base.name); - if (isNonPartitionedTable(mt)) + if (isRangePartitionTable(mt) || isListPartitionTable(mt)) + dup_sql_type(tr, mt->s, &(op->tpe), &(p->tpe)); + else p->tpe = op->tpe; - else - dup_sql_type(tr, mt->s, &(op->tpe), &(p->tpe)); p->with_nills = op->with_nills; p->t = mt; assert(isMergeTable(mt) || isReplicaTable(mt)); @@ -4516,10 +4516,10 @@ reset_part(sql_trans *tr, sql_part *ft, assert(isMergeTable(fmt) || isReplicaTable(fmt)); ft->t = fmt; } - if (isNonPartitionedTable(mt) || !s) + if (s && (isRangePartitionTable(mt) || isListPartitionTable(mt))) + dup_sql_type(tr, s, &(pft->tpe), &(ft->tpe)); + else ft->tpe = pft->tpe; - else - dup_sql_type(tr, s, &(pft->tpe), &(ft->tpe)); } else { ft->t = NULL; ft->tpe = pft->tpe; diff --git a/sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.sql b/sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.sql --- a/sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.sql +++ b/sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.sql @@ -10,4 +10,8 @@ prepare with something as (select a from exec **('a', 'a'); drop function get_onet; drop table onet; + +CREATE FUNCTION twoargs(input1 INT, input2 CLOB) RETURNS TABLE (outt CLOB) BEGIN RETURN TABLE(SELECT input1 || input2); END; +prepare select 1 from twoargs(?,?); + rollback; diff --git a/sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.stable.out b/sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.stable.out --- a/sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.stable.out +++ b/sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.stable.out @@ -120,6 +120,16 @@ stdout of test 'prepared-statement-with- [ "a", "b", "c", "a" ] #drop function get_onet; #drop table onet; +#CREATE FUNCTION twoargs(input1 INT, input2 CLOB) RETURNS TABLE (outt CLOB) BEGIN RETURN TABLE(SELECT input1 || input2); END; +#prepare select 1 from twoargs(?,?); +#prepare select 1 from twoargs(?,?); +% .prepare, .prepare, .prepare, .prepare, .prepare, .prepare # table_name +% type, digits, scale, schema, table, column # name +% varchar, int, int, str, str, str # type +% 7, 2, 1, 0, 0, 0 # length +[ "tinyint", 1, 0, "", "", "" ] +[ "int", 32, 0, NULL, NULL, NULL ] +[ "clob", 0, 0, NULL, NULL, NULL ] #rollback; # 13:30:56 > _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list