MonetDB: default - Merge with Mar2018 branch.
Changeset: 0e73d0138089 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0e73d0138089 Modified Files: debian/fix-deb.sh Branch: default Log Message: Merge with Mar2018 branch. diffs (11 lines): diff --git a/debian/fix-deb.sh b/debian/fix-deb.sh --- a/debian/fix-deb.sh +++ b/debian/fix-deb.sh @@ -64,6 +64,6 @@ wheezy) ;; trusty) # the trusty linker produces unresolved references to openSSL functions -sed -i '/openssl_LIBS/s/WIN32\?//' clients/mapilib/Makefile.ag +sed -i '/openssl_LIBS/s/WIN32?//' clients/mapilib/Makefile.ag ;; esac ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Mar2018 - Typo.
Changeset: ca76c2bdbc49 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ca76c2bdbc49 Modified Files: debian/fix-deb.sh Branch: Mar2018 Log Message: Typo. diffs (11 lines): diff --git a/debian/fix-deb.sh b/debian/fix-deb.sh --- a/debian/fix-deb.sh +++ b/debian/fix-deb.sh @@ -64,6 +64,6 @@ wheezy) ;; trusty) # the trusty linker produces unresolved references to openSSL functions -sed -i '/openssl_LIBS/s/WIN32\?//' clients/mapilib/Makefile.ag +sed -i '/openssl_LIBS/s/WIN32?//' clients/mapilib/Makefile.ag ;; esac ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: default - Merge with Mar2018 branch.
Changeset: 2d9061addec5 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2d9061addec5 Added Files: sql/backends/monet5/UDF/capi/Tests/capi15.sql sql/backends/monet5/UDF/capi/Tests/capi15.stable.err sql/backends/monet5/UDF/capi/Tests/capi15.stable.out sql/backends/monet5/UDF/capi/Tests/capi16.sql sql/backends/monet5/UDF/capi/Tests/capi16.stable.err sql/backends/monet5/UDF/capi/Tests/capi16.stable.out sql/backends/monet5/UDF/capi/Tests/capi17.sql sql/backends/monet5/UDF/capi/Tests/capi17.stable.err sql/backends/monet5/UDF/capi/Tests/capi17.stable.out sql/backends/monet5/UDF/capi/Tests/capi18.sql sql/backends/monet5/UDF/capi/Tests/capi18.stable.err sql/backends/monet5/UDF/capi/Tests/capi18.stable.out Modified Files: debian/fix-deb.sh sql/backends/monet5/UDF/capi/Tests/All sql/backends/monet5/UDF/capi/capi.c sql/backends/monet5/UDF/capi/cheader.h Branch: default Log Message: Merge with Mar2018 branch. diffs (truncated from 1188 to 300 lines): diff --git a/debian/fix-deb.sh b/debian/fix-deb.sh --- a/debian/fix-deb.sh +++ b/debian/fix-deb.sh @@ -35,7 +35,7 @@ 1) esac case $SUITE in -wheezy | precise | trusty) +wheezy | trusty) # fix control file because these systems don't have liblas and a # too old version of libgeos sed -i -e 's/, libgeos-dev[^,]*//;s/, liblas-c-dev[^,]*//' \ @@ -47,7 +47,7 @@ wheezy | precise | trusty) esac case $SUITE in -wheezy | jessie | precise | trusty | wily) +wheezy | jessie | trusty | wily) # Xenial Xerus (and presumably newer releases) uses php-cli, # all others still have php5-cli and don't have php*-sockets sed -i 's/php-cli/php5-cli/;s/, *php-sockets//' debian/control @@ -55,11 +55,15 @@ wheezy | jessie | precise | trusty | wil esac case $SUITE in -wheezy | precise) +wheezy) # numpy is too old sed -i -e 's/, python-dev[^,]*//;s/, python-numpy[^,]*//' \ -e '/^Package:.*monetdb-python2/,/^$/d' debian/control sed -i '/pyintegration=yes/s/yes/no/' debian/rules rm debian/monetdb-python2.install ;; +trusty) +# the trusty linker produces unresolved references to openSSL functions +sed -i '/openssl_LIBS/s/WIN32\?//' clients/mapilib/Makefile.ag +;; esac diff --git a/sql/backends/monet5/UDF/capi/Tests/All b/sql/backends/monet5/UDF/capi/Tests/All --- a/sql/backends/monet5/UDF/capi/Tests/All +++ b/sql/backends/monet5/UDF/capi/Tests/All @@ -14,4 +14,6 @@ NOT_WIN32?capi11 NOT_WIN32?capi12 NOT_WIN32?capi13 NOT_WIN32?capi14 - +NOT_WIN32?capi15 +NOT_WIN32?capi16 +NOT_WIN32?capi17 diff --git a/sql/backends/monet5/UDF/capi/Tests/capi15.sql b/sql/backends/monet5/UDF/capi/Tests/capi15.sql new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi15.sql @@ -0,0 +1,19 @@ + +START TRANSACTION; + +CREATE FUNCTION capi16(i INTEGER, j STRING, k BLOB, l DATE, m TIMESTAMP, n TIME) +RETURNS INTEGER +LANGUAGE C { +result->initialize(result, i.count); +for(size_t it = 0; it < i.count; it++) { +result->data[it] = i.data[it] * 2; +} +}; + +CREATE TABLE capi16table(i INTEGER, j STRING, k BLOB, l DATE, m TIMESTAMP, n TIME); +SELECT i, capi16(i, j, k, l, m, n) FROM capi16table; + +DROP TABLE capi16table; +DROP FUNCTION capi16; + +ROLLBACK; diff --git a/sql/backends/monet5/UDF/capi/Tests/capi15.stable.err b/sql/backends/monet5/UDF/capi/Tests/capi15.stable.err new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi15.stable.err @@ -0,0 +1,35 @@ +stderr of test 'capi15` in directory 'sql/backends/monet5/UDF/capi` itself: + + +# 14:47:44 > +# 14:47:44 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=32682" "--set" "mapi_usock=/var/tmp/mtest-72472/.s.monetdb.32682" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi" "--set" "embedded_c=true" +# 14:47:44 > + +# builtin opt gdk_dbpath = /Users/myth/opt/var/monetdb5/dbfarm/demo +# builtin opt gdk_debug = 0 +# builtin opt gdk_vmtrim = no +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 5 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 32682 +# cmdline opt mapi_usock = /var/tmp/mtest-72472/.s.monetdb.32682 +# cmdline opt monet_prompt = +# cmdline opt gdk_dbpath = /Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi +# cmdline opt embedded_c = true +# cmdline opt gdk_debug = 553648138 + +# 14:47:44 > +# 14:47:44 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-72472" "--port=32682" +# 14:47:44 > + + +# 14:47:45 > +# 14:47:45 > "Done." +# 14:47:45
MonetDB: remote_auth - Merge with default
Changeset: 4751de1e20bb for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4751de1e20bb Added Files: sql/test/BugTracker-2018/Tests/procedure-create-table.Bug-6604.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-cast-null-not-in.Bug-6605.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-cast-null-not-in.Bug-6605.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-cast-null-not-in.Bug-6605.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out Modified Files: MonetDB.spec buildtools/selinux/monetdb.te gdk/gdk_aggr.c gdk/gdk_select.c sql/ChangeLog.Mar2018 sql/backends/monet5/rel_bin.c sql/backends/monet5/sql_upgrades.c sql/scripts/21_dependency_views.sql sql/server/rel_optimizer.c sql/server/rel_psm.c sql/server/rel_schema.c sql/server/rel_select.c sql/server/sql_parser.h sql/server/sql_parser.y sql/test/BugTracker-2014/Tests/temporary.Bug-3430.stable.err sql/test/BugTracker-2018/Tests/All sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-not-in.Bug-6594.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-not-in.Bug-6594.stable.out sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64.int128 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.stable.out sql/test/emptydb/Tests/check.stable.out.32bit sql/test/emptydb/Tests/check.stable.out.int128 sql/test/orderidx/Tests/simpletable.sql sql/test/orderidx/Tests/simpletable.stable.out sql/test/orderidx/Tests/simpletable.stable.out.32bit sql/test/orderidx/Tests/smalltable.sql sql/test/orderidx/Tests/smalltable.stable.out sql/test/orderidx/Tests/smalltable.stable.out.32bit sql/test/pg_regress/Tests/vacuum.sql sql/test/pg_regress/Tests/vacuum.stable.out sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade/Tests/upgrade.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128 Branch: remote_auth Log Message: Merge with default diffs (truncated from 2824 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -640,7 +640,6 @@ fi %exclude %{_libdir}/monetdb5/fits.mal %exclude %{_libdir}/monetdb5/autoload/*_fits.mal %exclude %{_libdir}/monetdb5/createdb/*_fits.sql -%exclude %{_libdir}/monetdb5/lib_fits.so %endif %if %{?with_geos:1}%{!?with_geos:0} %exclude %{_libdir}/monetdb5/geom.mal @@ -674,25 +673,16 @@ fi %endif %exclude %{_libdir}/monetdb5/autoload/??_sql*.mal %{_libdir}/monetdb5/autoload/*.mal -%if %{?with_geos:1}%{!?with_geos:0} -%exclude %{_libdir}/monetdb5/lib_geom.so -%endif -%if %{?with_lidar:1}%{!?with_lidar:0} -%exclude %{_libdir}/monetdb5/lib_lidar.so -%endif -%if %{?with_pyintegration:1}%{!?with_pyintegration:0} -%exclude %{_libdir}/monetdb5/lib_pyapi.so -%endif -%if %{?with_rintegration:1}%{!?with_rintegration:0} -%exclude %{_libdir}/monetdb5/lib_rapi.so -%endif %if %{?with_samtools:1}%{!?with_samtools:0} %exclude %{_libdir}/monetdb5/bam.mal %exclude %{_libdir}/monetdb5/autoload/*_bam.mal -%exclude %{_libdir}/monetdb5/lib_bam.so %endif -%exclude %{_libdir}/monetdb5/lib_sql.so -%{_libdir}/monetdb5/*.so +%{_libdir}/monetdb5/lib_capi.so +%{_libdir}/monetdb5/lib_generator.so +%{_libdir}/monetdb5/lib_lsst.so +%{_libdir}/monetdb5/lib_opt_sql_append.so +%{_libdir}/monetdb5/lib_udf.so +%{_libdir}/monetdb5/lib_vault.so %doc %{_mandir}/man1/mserver5.1.gz %dir %{_datadir}/doc/MonetDB %docdir %{_datadir}/doc/MonetDB diff --git a/buildtools/selinux/monetdb.te b/buildtools/selinux/monetdb.te --- a/buildtools/selinux/monetdb.te +++ b/buildtools/selinux/monetdb.te @@ -1,7 +1,24 @@ -policy_module(monetdb, 0.2) +policy_module(monetdb, 0.3) # The above line declares that this file is a SELinux policy file. Its # name
MonetDB: remote_auth - Approve upgrade tests
Changeset: 35698c84743b for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=35698c84743b Modified Files: sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64.int128 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.stable.out sql/test/emptydb/Tests/check.stable.out.32bit sql/test/emptydb/Tests/check.stable.out.int128 sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade/Tests/upgrade.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128 Branch: remote_auth Log Message: Approve upgrade tests diffs (truncated from 436 to 300 lines): diff --git a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 --- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 +++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 @@ -45,9 +45,17 @@ insert into sys.systemfunctions (select set schema "sys"; commit; -# 15:50:22 > -# 15:50:22 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-17773" "--port=32731" -# 15:50:22 > +Running database upgrade commands: +set schema sys; +create function sys.remote_table_credentials (tablename string) returns table ("uri" string, "username" string, "hash" string) external name sql.rt_credentials; +insert into sys.systemfunctions (select id from sys.functions where name='remote_table_credentials' and id not in (select function_id from sys.systemfunctions)); +set schema "sys"; +commit; + + +# 15:17:55 > +# 15:17:55 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-6495" "--port=30245" +# 15:17:55 > #select 1; % .L2 # table_name diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out --- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out +++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out @@ -45,6 +45,14 @@ insert into sys.systemfunctions (select set schema "sys"; commit; +Running database upgrade commands: +set schema sys; +create function sys.remote_table_credentials (tablename string) returns table ("uri" string, "username" string, "hash" string) external name sql.rt_credentials; +insert into sys.systemfunctions (select id from sys.functions where name='remote_table_credentials' and id not in (select function_id from sys.systemfunctions)); +set schema "sys"; +commit; + + # 15:55:37 > # 15:55:37 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-12365" "--port=35877" # 15:55:37 > diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit --- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit +++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit @@ -45,6 +45,14 @@ insert into sys.systemfunctions (select set schema "sys"; commit; +Running database upgrade commands: +set schema sys; +create function sys.remote_table_credentials (tablename string) returns table ("uri" string, "username" string, "hash" string) external name sql.rt_credentials; +insert into sys.systemfunctions (select id from sys.functions where name='remote_table_credentials' and id not in (select function_id from sys.systemfunctions)); +set schema "sys"; +commit; + + # 16:02:52 > # 16:02:52 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-5391" "--port=32916" # 16:02:52 > diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 --- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 +++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 @@ -5373,6 +5373,13 @@ insert into sys.systemfunctions (select set schema "sys"; commit; +Running database upgrade commands: +set schema sys; +create function sys.remote_table_credentials (tablename string) returns table ("uri" string, "username" string, "hash" string) external
MonetDB: remote_auth - Make the new sql function a system function
Changeset: 084f5cd70800 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=084f5cd70800 Modified Files: sql/backends/monet5/sql_upgrades.c Branch: remote_auth Log Message: Make the new sql function a system function diffs (23 lines): diff --git a/sql/backends/monet5/sql_upgrades.c b/sql/backends/monet5/sql_upgrades.c --- a/sql/backends/monet5/sql_upgrades.c +++ b/sql/backends/monet5/sql_upgrades.c @@ -1550,15 +1550,17 @@ sql_update_remote_tables(Client c, mvc * /* Create the SQL function needed to dump the remote table credentials */ pos += snprintf(buf + pos, bufsize - pos, "set schema sys;\n"); pos += snprintf(buf + pos, bufsize - pos, - "create function sys.remote_table_credentials(tablename string)" + "create function sys.remote_table_credentials (tablename string)" " returns table (\"uri\" string, \"username\" string, \"hash\" string)" - " external name sql.rt_credentials;\n"); + " external name sql.rt_credentials;\n" + "insert into sys.systemfunctions (select id from sys.functions where name='remote_table_credentials' and id not in (select function_id from sys.systemfunctions));\n"); if (schema) pos += snprintf(buf + pos, bufsize - pos, "set schema \"%s\";\n", schema); pos += snprintf(buf + pos, bufsize - pos, "commit;\n"); assert(pos < bufsize); + printf("Running database upgrade commands:\n%s\n", buf); err = SQLstatementIntern(c, , "create function", 1, 0, NULL); if (err) goto bailout; ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Mar2018 - Patch to get this compiled on Ubuntu Trusty.
Changeset: eb5e0707abc2 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=eb5e0707abc2 Modified Files: debian/fix-deb.sh Branch: Mar2018 Log Message: Patch to get this compiled on Ubuntu Trusty. diffs (12 lines): diff --git a/debian/fix-deb.sh b/debian/fix-deb.sh --- a/debian/fix-deb.sh +++ b/debian/fix-deb.sh @@ -62,4 +62,8 @@ wheezy) sed -i '/pyintegration=yes/s/yes/no/' debian/rules rm debian/monetdb-python2.install ;; +trusty) +# the trusty linker produces unresolved references to openSSL functions +sed -i '/openssl_LIBS/s/WIN32\?//' clients/mapilib/Makefile.ag +;; esac ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Mar2018 - We don't support Ubuntu Precise (12.04 LTS) a...
Changeset: 57feb302ffc0 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=57feb302ffc0 Modified Files: debian/fix-deb.sh Branch: Mar2018 Log Message: We don't support Ubuntu Precise (12.04 LTS) anymore. diffs (30 lines): diff --git a/debian/fix-deb.sh b/debian/fix-deb.sh --- a/debian/fix-deb.sh +++ b/debian/fix-deb.sh @@ -35,7 +35,7 @@ 1) esac case $SUITE in -wheezy | precise | trusty) +wheezy | trusty) # fix control file because these systems don't have liblas and a # too old version of libgeos sed -i -e 's/, libgeos-dev[^,]*//;s/, liblas-c-dev[^,]*//' \ @@ -47,7 +47,7 @@ wheezy | precise | trusty) esac case $SUITE in -wheezy | jessie | precise | trusty | wily) +wheezy | jessie | trusty | wily) # Xenial Xerus (and presumably newer releases) uses php-cli, # all others still have php5-cli and don't have php*-sockets sed -i 's/php-cli/php5-cli/;s/, *php-sockets//' debian/control @@ -55,7 +55,7 @@ wheezy | jessie | precise | trusty | wil esac case $SUITE in -wheezy | precise) +wheezy) # numpy is too old sed -i -e 's/, python-dev[^,]*//;s/, python-numpy[^,]*//' \ -e '/^Package:.*monetdb-python2/,/^$/d' debian/control ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: merge-partitions - Making progress for expressions hand...
Changeset: bace66e067ee for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=bace66e067ee Added Files: sql/server/sql_partition.c sql/server/sql_partition.h sql/test/merge-partitions/Tests/mergepart20.sql Modified Files: sql/backends/monet5/sql.c sql/backends/monet5/sql_cat.c sql/include/sql_catalog.h sql/server/Makefile.ag sql/server/rel_propagate.c sql/server/rel_schema.c sql/server/rel_updates.c sql/server/rel_updates.h sql/server/sql_mvc.c sql/server/sql_parser.y sql/server/sql_semantic.c sql/storage/sql_catalog.c sql/storage/store.c sql/test/merge-partitions/Tests/All Branch: merge-partitions Log Message: Making progress for expressions handling. So far it compiles expressions, now they should be added in the relational plan. diffs (truncated from 749 to 300 lines): diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c --- a/sql/backends/monet5/sql.c +++ b/sql/backends/monet5/sql.c @@ -337,6 +337,8 @@ create_table_or_view(mvc *sql, char *sna if(isPartitionedByColumnTable(t) && c == t->part.pcol) nt->part.pcol = copied; } + if(isPartitionedByExpressionTable(t)) + nt->part.pexp->exp = sa_strdup(sql->session->tr->sa, t->part.pexp->exp); if(sql_trans_set_partition_table(sql->session->tr, nt)) throw(SQL, "sql.catalog", SQLSTATE(42000) "CREATE TABLE: %s_%s: an internal error occurred", s->base.name, t->base.name); diff --git a/sql/backends/monet5/sql_cat.c b/sql/backends/monet5/sql_cat.c --- a/sql/backends/monet5/sql_cat.c +++ b/sql/backends/monet5/sql_cat.c @@ -18,7 +18,7 @@ #include "sql_scenario.h" #include "sql_mvc.h" #include "sql_qc.h" -#include "sql_optimizer.h" +#include "sql_partition.h" #include "mal_namespace.h" #include "opt_prelude.h" #include "querylog.h" @@ -210,7 +210,8 @@ alter_table_add_range_partition(mvc *sql goto finish; } - find_partition_type(, mt); + if((msg = find_partition_type(sql, , mt))) + goto finish; tp1 = tpe.type->localtype; if(ATOMcmp(TYPE_str, min, ATOMnilptr(TYPE_str))) { if (tp1 == TYPE_str) { @@ -355,7 +356,8 @@ alter_table_add_value_partition(mvc *sql goto finish; } - find_partition_type(, mt); + if((msg = find_partition_type(sql, , mt))) + goto finish; tp1 = tpe.type->localtype; ninserts = pci->argc - pci->retc - 6; if(ninserts <= 0 && !with_nills) { @@ -367,7 +369,6 @@ alter_table_add_value_partition(mvc *sql size_t len = 0; str next = *getArgReference_str(stk, pci, i); sql_part_value *nextv = NULL; - void *prev; if(escaped) { GDKfree(escaped); @@ -405,7 +406,7 @@ alter_table_add_value_partition(mvc *sql memcpy(nextv->value, pnext, len); nextv->length = len; - if((prev = list_append_sorted(values, nextv, sql_values_list_element_validate_and_insert)) != NULL) { + if(list_append_sorted(values, nextv, sql_values_list_element_validate_and_insert) != NULL) { GDKfree(pnext); msg = createException(SQL,"sql.alter_table_add_value_partition",SQLSTATE(42000) "ALTER TABLE: there are duplicated values in the list"); diff --git a/sql/include/sql_catalog.h b/sql/include/sql_catalog.h --- a/sql/include/sql_catalog.h +++ b/sql/include/sql_catalog.h @@ -541,6 +541,12 @@ typedef struct sql_part { } part; } sql_part; +typedef struct sql_expression { + sql_subtype type; + char *exp; + list *cols; +} sql_expression; + typedef struct sql_table { sql_base base; sht type; /* table, view, etc */ @@ -566,8 +572,8 @@ typedef struct sql_table { struct sql_table *p; /* The table is part of this merge table */ union { - struct sql_column *pcol; /* If it is partitioned on a column */ - struct sql_subfunc *pexp; /* If it is partitioned by an expression */ + struct sql_column *pcol; /* If it is partitioned on a column */ + struct sql_expression *pexp; /* If it is partitioned by an expression */ } part; } sql_table; @@ -622,8 +628,6 @@ extern node *list_find_name(list *l, con extern node *list_find_id(list *l, int id); extern node *list_find_base_id(list *l, int id); -extern void find_partition_type(sql_subtype *res, sql_table *t); - extern sql_key *find_sql_key(sql_table *t, const char *kname); extern sql_idx *find_sql_idx(sql_table *t, const char *kname); diff --git a/sql/server/Makefile.ag b/sql/server/Makefile.ag ---
MonetDB: Mar2018 - In-place updates using JIT C UDFs testcase.
Changeset: b0eba40185d7 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b0eba40185d7 Added Files: sql/backends/monet5/UDF/capi/Tests/capi18.sql sql/backends/monet5/UDF/capi/Tests/capi18.stable.err sql/backends/monet5/UDF/capi/Tests/capi18.stable.out Branch: Mar2018 Log Message: In-place updates using JIT C UDFs testcase. diffs (179 lines): diff --git a/sql/backends/monet5/UDF/capi/Tests/capi18.sql b/sql/backends/monet5/UDF/capi/Tests/capi18.sql new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi18.sql @@ -0,0 +1,24 @@ + +START TRANSACTION; + +CREATE FUNCTION capi00(inp INTEGER) RETURNS INTEGER LANGUAGE C { +size_t i; +result->initialize(result, inp.count); +for(i = 0; i < inp.count; i++) { +result->data[i] = inp.data[i] * 2; +} +}; + +CREATE TABLE integers(i INTEGER); +INSERT INTO integers VALUES (1), (2), (3), (4), (5); + +SELECT * FROM integers; + +UPDATE integers SET i=capi00(i); + +SELECT * FROM integers; + +DROP FUNCTION capi00; +DROP TABLE integers; + +ROLLBACK; diff --git a/sql/backends/monet5/UDF/capi/Tests/capi18.stable.err b/sql/backends/monet5/UDF/capi/Tests/capi18.stable.err new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi18.stable.err @@ -0,0 +1,36 @@ +stderr of test 'capi18` in directory 'sql/backends/monet5/UDF/capi` itself: + + +# 15:58:24 > +# 15:58:24 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37255" "--set" "mapi_usock=/var/tmp/mtest-15164/.s.monetdb.37255" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi" "--set" "embedded_py=true" "--set" "embedded_c=true" +# 15:58:24 > + +# builtin opt gdk_dbpath = /Users/myth/opt/var/monetdb5/dbfarm/demo +# builtin opt gdk_debug = 0 +# builtin opt gdk_vmtrim = no +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 5 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 37255 +# cmdline opt mapi_usock = /var/tmp/mtest-15164/.s.monetdb.37255 +# cmdline opt monet_prompt = +# cmdline opt gdk_dbpath = /Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi +# cmdline opt embedded_py = true +# cmdline opt embedded_c = true +# cmdline opt gdk_debug = 553648138 + +# 15:58:25 > +# 15:58:25 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-15164" "--port=37255" +# 15:58:25 > + + +# 15:58:25 > +# 15:58:25 > "Done." +# 15:58:25 > + diff --git a/sql/backends/monet5/UDF/capi/Tests/capi18.stable.out b/sql/backends/monet5/UDF/capi/Tests/capi18.stable.out new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi18.stable.out @@ -0,0 +1,104 @@ +stdout of test 'capi18` in directory 'sql/backends/monet5/UDF/capi` itself: + + +# 15:58:24 > +# 15:58:24 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37255" "--set" "mapi_usock=/var/tmp/mtest-15164/.s.monetdb.37255" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi" "--set" "embedded_py=true" "--set" "embedded_c=true" +# 15:58:24 > + +# MonetDB 5 server v11.29.4 +# This is an unreleased version +# Serving database 'mTests_sql_backends_monet5_UDF_capi', using 4 threads +# Compiled for x86_64-apple-darwin15.6.0/64bit with 128bit integers +# Found 8.000 GiB available main-memory. +# Copyright (c) 1993 - July 2008 CWI. +# Copyright (c) August 2008 - 2018 MonetDB B.V., all rights reserved +# Visit https://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://dhcp-30.eduroam.cwi.nl:37255/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-15164/.s.monetdb.37255 +# MonetDB/SQL module loaded +# MonetDB/Python2 module loaded + +Ready. +# SQL catalog created, loading sql scripts once +# loading sql script: 09_like.sql +# loading sql script: 10_math.sql +# loading sql script: 11_times.sql +# loading sql script: 12_url.sql +# loading sql script: 13_date.sql +# loading sql script: 14_inet.sql +# loading sql script: 15_querylog.sql +# loading sql script: 16_tracelog.sql +# loading sql script: 17_temporal.sql +# loading sql script: 18_index.sql +# loading sql script: 20_vacuum.sql +# loading sql script: 21_dependency_functions.sql +# loading sql script: 21_dependency_views.sql +# loading sql script: 22_clients.sql +# loading sql script: 23_skyserver.sql +# loading sql script: 25_debug.sql +# loading sql script: 26_sysmon.sql +# loading sql script: 27_rejects.sql +# loading sql script: 39_analytics.sql +# loading sql script: 39_analytics_hge.sql +# loading sql script:
MonetDB: Mar2018 - Don't crash on use of free().
Changeset: d1028e028629 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d1028e028629 Added Files: sql/backends/monet5/UDF/capi/Tests/capi17.sql sql/backends/monet5/UDF/capi/Tests/capi17.stable.err sql/backends/monet5/UDF/capi/Tests/capi17.stable.out Modified Files: sql/backends/monet5/UDF/capi/Tests/All sql/backends/monet5/UDF/capi/capi.c sql/backends/monet5/UDF/capi/cheader.h Branch: Mar2018 Log Message: Don't crash on use of free(). diffs (235 lines): diff --git a/sql/backends/monet5/UDF/capi/Tests/All b/sql/backends/monet5/UDF/capi/Tests/All --- a/sql/backends/monet5/UDF/capi/Tests/All +++ b/sql/backends/monet5/UDF/capi/Tests/All @@ -16,4 +16,4 @@ NOT_WIN32?capi13 NOT_WIN32?capi14 NOT_WIN32?capi15 NOT_WIN32?capi16 - +NOT_WIN32?capi17 diff --git a/sql/backends/monet5/UDF/capi/Tests/capi17.sql b/sql/backends/monet5/UDF/capi/Tests/capi17.sql new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi17.sql @@ -0,0 +1,27 @@ + + + +START TRANSACTION; + +CREATE FUNCTION capi17(inp OID) RETURNS BOOLEAN LANGUAGE C { +size_t i; +result->initialize(result, inp.count); +char* value = malloc(100); +for(i = 0; i < inp.count; i++) { +if (inp.data[i] == inp.null_value) { +result->data[i] = 0; +} else { +result->data[i] = 1; +} +} +free(value); +}; +CREATE TABLE oids(i OID); +INSERT INTO oids(i) VALUES (100), (NULL), (200); + +SELECT * FROM oids WHERE capi17(i); + +DROP FUNCTION capi17; +DROP TABLE oids; + +ROLLBACK; diff --git a/sql/backends/monet5/UDF/capi/Tests/capi17.stable.err b/sql/backends/monet5/UDF/capi/Tests/capi17.stable.err new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi17.stable.err @@ -0,0 +1,36 @@ +stderr of test 'capi17` in directory 'sql/backends/monet5/UDF/capi` itself: + + +# 15:53:02 > +# 15:53:02 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37852" "--set" "mapi_usock=/var/tmp/mtest-14326/.s.monetdb.37852" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi" "--set" "embedded_py=true" "--set" "embedded_c=true" +# 15:53:02 > + +# builtin opt gdk_dbpath = /Users/myth/opt/var/monetdb5/dbfarm/demo +# builtin opt gdk_debug = 0 +# builtin opt gdk_vmtrim = no +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 5 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 37852 +# cmdline opt mapi_usock = /var/tmp/mtest-14326/.s.monetdb.37852 +# cmdline opt monet_prompt = +# cmdline opt gdk_dbpath = /Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi +# cmdline opt embedded_py = true +# cmdline opt embedded_c = true +# cmdline opt gdk_debug = 553648138 + +# 15:53:03 > +# 15:53:03 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-14326" "--port=37852" +# 15:53:03 > + + +# 15:53:05 > +# 15:53:05 > "Done." +# 15:53:05 > + diff --git a/sql/backends/monet5/UDF/capi/Tests/capi17.stable.out b/sql/backends/monet5/UDF/capi/Tests/capi17.stable.out new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi17.stable.out @@ -0,0 +1,95 @@ +stdout of test 'capi17` in directory 'sql/backends/monet5/UDF/capi` itself: + + +# 15:53:02 > +# 15:53:02 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37852" "--set" "mapi_usock=/var/tmp/mtest-14326/.s.monetdb.37852" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi" "--set" "embedded_py=true" "--set" "embedded_c=true" +# 15:53:02 > + +# MonetDB 5 server v11.29.4 +# This is an unreleased version +# Serving database 'mTests_sql_backends_monet5_UDF_capi', using 4 threads +# Compiled for x86_64-apple-darwin15.6.0/64bit with 128bit integers +# Found 8.000 GiB available main-memory. +# Copyright (c) 1993 - July 2008 CWI. +# Copyright (c) August 2008 - 2018 MonetDB B.V., all rights reserved +# Visit https://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://dhcp-30.eduroam.cwi.nl:37852/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-14326/.s.monetdb.37852 +# MonetDB/SQL module loaded +# MonetDB/Python2 module loaded + +Ready. +# SQL catalog created, loading sql scripts once +# loading sql script: 09_like.sql +# loading sql script: 10_math.sql +# loading sql script: 11_times.sql +# loading sql script: 12_url.sql +# loading sql script: 13_date.sql +# loading sql script: 14_inet.sql +# loading sql script: 15_querylog.sql +# loading sql script:
MonetDB: Mar2018 - Fix scalar value inputs/outputs in JIT C UDFs...
Changeset: 90c0bd2e2aef for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=90c0bd2e2aef Added Files: sql/backends/monet5/UDF/capi/Tests/capi16.sql sql/backends/monet5/UDF/capi/Tests/capi16.stable.err sql/backends/monet5/UDF/capi/Tests/capi16.stable.out Modified Files: sql/backends/monet5/UDF/capi/Tests/All sql/backends/monet5/UDF/capi/capi.c Branch: Mar2018 Log Message: Fix scalar value inputs/outputs in JIT C UDFs and add testcase. diffs (truncated from 399 to 300 lines): diff --git a/sql/backends/monet5/UDF/capi/Tests/All b/sql/backends/monet5/UDF/capi/Tests/All --- a/sql/backends/monet5/UDF/capi/Tests/All +++ b/sql/backends/monet5/UDF/capi/Tests/All @@ -15,4 +15,5 @@ NOT_WIN32?capi12 NOT_WIN32?capi13 NOT_WIN32?capi14 NOT_WIN32?capi15 +NOT_WIN32?capi16 diff --git a/sql/backends/monet5/UDF/capi/Tests/capi16.sql b/sql/backends/monet5/UDF/capi/Tests/capi16.sql new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi16.sql @@ -0,0 +1,112 @@ + +START TRANSACTION; +CREATE FUNCTION string_reverse(input STRING) RETURNS STRING +LANGUAGE C { +#include +size_t i, j; +result->initialize(result, input.count); +for(i = 0; i < input.count; i++) { +char* input_string = input.data[i]; +size_t len = strlen(input_string); +result->data[i] = malloc(len + 1); +for(j = 0; j < len; j++) { +result->data[i][j] = input_string[len - j - 1]; +} +result->data[i][len] = '\0'; +} +}; + +SELECT 'hello', string_reverse('hello'); + + +CREATE FUNCTION capi10(inp BLOB) RETURNS BLOB LANGUAGE C { +size_t i; +result->initialize(result, inp.count); +for(i = 0; i < inp.count; i++) { +if (inp.is_null(inp.data[i])) { +result->data[i] = result->null_value; +} else { +result->data[i].data = malloc(inp.data[i].size); +memcpy(result->data[i].data, inp.data[i].data, inp.data[i].size); +result->data[i].size = inp.data[i].size; +} +} +}; + +SELECT BLOB '0000', capi10(BLOB '0000'); + + +CREATE FUNCTION capi00(inp INTEGER) RETURNS INTEGER LANGUAGE C { +size_t i; +result->initialize(result, inp.count); +for(i = 0; i < inp.count; i++) { +result->data[i] = inp.data[i] * 2; +} +}; + +SELECT 1, capi00(1); + +CREATE FUNCTION capi02_increment_year(d DATE) RETURNS DATE +language C +{ +size_t i; +result->initialize(result, d.count); +for(i = 0; i < result->count; i++) { +if (d.is_null(d.data[i])) { +result->data[i] = result->null_value; +} else { +result->data[i].year = d.data[i].year + 1; +result->data[i].month = d.data[i].month; +result->data[i].day = d.data[i].day; +} +} +}; + + +SELECT capi02_increment_year('1992-09-20'); + + +CREATE FUNCTION capi02_randomize_time(d TIME) RETURNS TIME +language C +{ +size_t i; +result->initialize(result, d.count); +for(i = 0; i < result->count; i++) { +if (d.is_null(d.data[i])) { +result->data[i] = result->null_value; +} else { +result->data[i].hours = (i + 1234) % 24; +result->data[i].minutes = (i + 1234) % 60; +result->data[i].seconds = (i + 1234) % 60; +result->data[i].ms = (i + 1234) % 1000; +} +} +}; + +SELECT capi02_randomize_time('03:03:02.0101'); + + +CREATE FUNCTION capi02_increment_timestamp(d TIMESTAMP) RETURNS TIMESTAMP +language C +{ +size_t i; +result->initialize(result, d.count); +for(i = 0; i < result->count; i++) { +if (d.is_null(d.data[i])) { +result->data[i] = result->null_value; +} else { +result->data[i].date.year = d.data[i].date.year + 1; +result->data[i].date.month = d.data[i].date.month; +result->data[i].date.day = d.data[i].date.day; + +result->data[i].time.hours = (i + 1234) % 24; +result->data[i].time.minutes = (i + 1234) % 60; +result->data[i].time.seconds = (i + 1234) % 60; +result->data[i].time.ms = (i + 1234) % 1000; +} +} +}; + +SELECT capi02_increment_timestamp('1992-09-20 03:03:02.0101'); + +ROLLBACK; diff --git a/sql/backends/monet5/UDF/capi/Tests/capi16.stable.err b/sql/backends/monet5/UDF/capi/Tests/capi16.stable.err new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi16.stable.err @@ -0,0 +1,35 @@ +stderr of test 'capi16` in directory 'sql/backends/monet5/UDF/capi` itself: + + +# 15:47:18 > +# 15:47:18 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=36686" "--set" "mapi_usock=/var/tmp/mtest-6494/.s.monetdb.36686" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi" "--set" "embedded_c=true" +# 15:47:18 > + +# builtin opt gdk_dbpath =
MonetDB: Mar2018 - Fix for zero length input columns in JIT C API.
Changeset: 783204486bc3 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=783204486bc3 Added Files: sql/backends/monet5/UDF/capi/Tests/capi15.sql sql/backends/monet5/UDF/capi/Tests/capi15.stable.err sql/backends/monet5/UDF/capi/Tests/capi15.stable.out Modified Files: sql/backends/monet5/UDF/capi/Tests/All sql/backends/monet5/UDF/capi/capi.c Branch: Mar2018 Log Message: Fix for zero length input columns in JIT C API. diffs (truncated from 366 to 300 lines): diff --git a/sql/backends/monet5/UDF/capi/Tests/All b/sql/backends/monet5/UDF/capi/Tests/All --- a/sql/backends/monet5/UDF/capi/Tests/All +++ b/sql/backends/monet5/UDF/capi/Tests/All @@ -14,4 +14,5 @@ NOT_WIN32?capi11 NOT_WIN32?capi12 NOT_WIN32?capi13 NOT_WIN32?capi14 +NOT_WIN32?capi15 diff --git a/sql/backends/monet5/UDF/capi/Tests/capi15.sql b/sql/backends/monet5/UDF/capi/Tests/capi15.sql new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi15.sql @@ -0,0 +1,19 @@ + +START TRANSACTION; + +CREATE FUNCTION capi16(i INTEGER, j STRING, k BLOB, l DATE, m TIMESTAMP, n TIME) +RETURNS INTEGER +LANGUAGE C { +result->initialize(result, i.count); +for(size_t it = 0; it < i.count; it++) { +result->data[it] = i.data[it] * 2; +} +}; + +CREATE TABLE capi16table(i INTEGER, j STRING, k BLOB, l DATE, m TIMESTAMP, n TIME); +SELECT i, capi16(i, j, k, l, m, n) FROM capi16table; + +DROP TABLE capi16table; +DROP FUNCTION capi16; + +ROLLBACK; diff --git a/sql/backends/monet5/UDF/capi/Tests/capi15.stable.err b/sql/backends/monet5/UDF/capi/Tests/capi15.stable.err new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi15.stable.err @@ -0,0 +1,35 @@ +stderr of test 'capi15` in directory 'sql/backends/monet5/UDF/capi` itself: + + +# 14:47:44 > +# 14:47:44 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=32682" "--set" "mapi_usock=/var/tmp/mtest-72472/.s.monetdb.32682" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi" "--set" "embedded_c=true" +# 14:47:44 > + +# builtin opt gdk_dbpath = /Users/myth/opt/var/monetdb5/dbfarm/demo +# builtin opt gdk_debug = 0 +# builtin opt gdk_vmtrim = no +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 5 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 32682 +# cmdline opt mapi_usock = /var/tmp/mtest-72472/.s.monetdb.32682 +# cmdline opt monet_prompt = +# cmdline opt gdk_dbpath = /Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi +# cmdline opt embedded_c = true +# cmdline opt gdk_debug = 553648138 + +# 14:47:44 > +# 14:47:44 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-72472" "--port=32682" +# 14:47:44 > + + +# 14:47:45 > +# 14:47:45 > "Done." +# 14:47:45 > + diff --git a/sql/backends/monet5/UDF/capi/Tests/capi15.stable.out b/sql/backends/monet5/UDF/capi/Tests/capi15.stable.out new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/UDF/capi/Tests/capi15.stable.out @@ -0,0 +1,85 @@ +stdout of test 'capi15` in directory 'sql/backends/monet5/UDF/capi` itself: + + +# 14:47:44 > +# 14:47:44 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=32682" "--set" "mapi_usock=/var/tmp/mtest-72472/.s.monetdb.32682" "--set" "monet_prompt=" "--forcemito" "--dbpath=/Users/myth/opt/var/MonetDB/mTests_sql_backends_monet5_UDF_capi" "--set" "embedded_c=true" +# 14:47:44 > + +# MonetDB 5 server v11.29.4 +# This is an unreleased version +# Serving database 'mTests_sql_backends_monet5_UDF_capi', using 4 threads +# Compiled for x86_64-apple-darwin15.6.0/64bit with 128bit integers +# Found 8.000 GiB available main-memory. +# Copyright (c) 1993 - July 2008 CWI. +# Copyright (c) August 2008 - 2018 MonetDB B.V., all rights reserved +# Visit https://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://dhcp-30.eduroam.cwi.nl:32682/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-72472/.s.monetdb.32682 +# MonetDB/SQL module loaded + +Ready. +# SQL catalog created, loading sql scripts once +# loading sql script: 09_like.sql +# loading sql script: 10_math.sql +# loading sql script: 11_times.sql +# loading sql script: 12_url.sql +# loading sql script: 13_date.sql +# loading sql script: 14_inet.sql +# loading sql script: 15_querylog.sql +# loading sql script: 16_tracelog.sql +# loading sql script: 17_temporal.sql +# loading sql script: 18_index.sql +# loading sql script: 20_vacuum.sql +# loading sql script: 21_dependency_functions.sql +# loading sql script:
MonetDB: trails - Merge with default
Changeset: e71cd7abd363 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e71cd7abd363 Added Files: clients/odbc/driver/ODBCQueries.h common/utils/ChangeLog-Archive common/utils/ChangeLog.Mar2018 debian/libmonetdb-client10.install debian/libmonetdb-stream11.install debian/libmonetdb16.install monetdb5/modules/mal/Tests/remote13.stable.err monetdb5/modules/mal/Tests/remote13.stable.out sql/backends/monet5/UDF/capi/Tests/capi14.sql sql/backends/monet5/UDF/capi/Tests/capi14.stable.err sql/backends/monet5/UDF/capi/Tests/capi14.stable.out sql/test/BugTracker-2018/Tests/concat-str-int.Bug-6583.sql sql/test/BugTracker-2018/Tests/concat-str-int.Bug-6583.stable.err sql/test/BugTracker-2018/Tests/concat-str-int.Bug-6583.stable.out sql/test/BugTracker-2018/Tests/create-temp-table-ordered-index-error.Bug-6574.sql sql/test/BugTracker-2018/Tests/create-temp-table-ordered-index-error.Bug-6574.stable.err sql/test/BugTracker-2018/Tests/create-temp-table-ordered-index-error.Bug-6574.stable.out sql/test/BugTracker-2018/Tests/multiple-count.Bug-6599.sql sql/test/BugTracker-2018/Tests/multiple-count.Bug-6599.stable.err sql/test/BugTracker-2018/Tests/multiple-count.Bug-6599.stable.out sql/test/BugTracker-2018/Tests/multiple-insertinto-table-Bug-6578.sql sql/test/BugTracker-2018/Tests/multiple-insertinto-table-Bug-6578.stable.err sql/test/BugTracker-2018/Tests/multiple-insertinto-table-Bug-6578.stable.out sql/test/BugTracker-2018/Tests/nested-merge-tables.Bug-6585.sql sql/test/BugTracker-2018/Tests/nested-merge-tables.Bug-6585.stable.err sql/test/BugTracker-2018/Tests/nested-merge-tables.Bug-6585.stable.out sql/test/BugTracker-2018/Tests/ordered-index-error.Bug-6572.sql sql/test/BugTracker-2018/Tests/ordered-index-error.Bug-6572.stable.err sql/test/BugTracker-2018/Tests/ordered-index-error.Bug-6572.stable.out sql/test/BugTracker-2018/Tests/procedure-create-table.Bug-6604.sql sql/test/BugTracker-2018/Tests/remote-table-where-is-null.Bug-6601.SQL.py sql/test/BugTracker-2018/Tests/remote-table-where-is-null.Bug-6601.stable.err sql/test/BugTracker-2018/Tests/remote-table-where-is-null.Bug-6601.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-aritmetic-expressions-handling.Bug-6576.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-aritmetic-expressions-handling.Bug-6576.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-aritmetic-expressions-handling.Bug-6576.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-aritmetic-expressions-handling.Bug-6576.stable.out.int128 sql/test/BugTracker-2018/Tests/sqlitelogictest-case-coalesce.Bug-6550.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-case-coalesce.Bug-6550.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-case-coalesce.Bug-6550.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-case-not-in-count.Bug-6587.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-case-not-in-count.Bug-6587.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-case-not-in-count.Bug-6587.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-cast-null-not-in.Bug-6605.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-coalesce-division-by-zero.Bug-6556.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-coalesce-division-by-zero.Bug-6556.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-coalesce-division-by-zero.Bug-6556.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-coalesce-division-by-zero.Bug-6556.stable.out.int128 sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-extra-columns.Bug-6555.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-extra-columns.Bug-6555.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-extra-columns.Bug-6555.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-not-in.Bug-6594.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-not-in.Bug-6594.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-not-in.Bug-6594.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-nullif-coalesce.Bug-6565.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-nullif-coalesce.Bug-6565.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-nullif-coalesce.Bug-6565.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case.Bug-6552.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case.Bug-6552.stable.err
MonetDB: default - Merge with Mar2018 branch.
Changeset: aafe85f05aa3 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=aafe85f05aa3 Added Files: sql/test/BugTracker-2018/Tests/sqlitelogictest-cast-null-not-in.Bug-6605.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-cast-null-not-in.Bug-6605.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out Modified Files: MonetDB.spec buildtools/selinux/monetdb.te gdk/gdk_aggr.c sql/test/BugTracker-2018/Tests/All sql/test/orderidx/Tests/simpletable.sql sql/test/orderidx/Tests/simpletable.stable.out sql/test/orderidx/Tests/simpletable.stable.out.32bit sql/test/orderidx/Tests/smalltable.sql sql/test/orderidx/Tests/smalltable.stable.out sql/test/orderidx/Tests/smalltable.stable.out.32bit sql/test/pg_regress/Tests/vacuum.sql sql/test/pg_regress/Tests/vacuum.stable.out Branch: default Log Message: Merge with Mar2018 branch. diffs (truncated from 1147 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -640,7 +640,6 @@ fi %exclude %{_libdir}/monetdb5/fits.mal %exclude %{_libdir}/monetdb5/autoload/*_fits.mal %exclude %{_libdir}/monetdb5/createdb/*_fits.sql -%exclude %{_libdir}/monetdb5/lib_fits.so %endif %if %{?with_geos:1}%{!?with_geos:0} %exclude %{_libdir}/monetdb5/geom.mal @@ -674,25 +673,16 @@ fi %endif %exclude %{_libdir}/monetdb5/autoload/??_sql*.mal %{_libdir}/monetdb5/autoload/*.mal -%if %{?with_geos:1}%{!?with_geos:0} -%exclude %{_libdir}/monetdb5/lib_geom.so -%endif -%if %{?with_lidar:1}%{!?with_lidar:0} -%exclude %{_libdir}/monetdb5/lib_lidar.so -%endif -%if %{?with_pyintegration:1}%{!?with_pyintegration:0} -%exclude %{_libdir}/monetdb5/lib_pyapi.so -%endif -%if %{?with_rintegration:1}%{!?with_rintegration:0} -%exclude %{_libdir}/monetdb5/lib_rapi.so -%endif %if %{?with_samtools:1}%{!?with_samtools:0} %exclude %{_libdir}/monetdb5/bam.mal %exclude %{_libdir}/monetdb5/autoload/*_bam.mal -%exclude %{_libdir}/monetdb5/lib_bam.so %endif -%exclude %{_libdir}/monetdb5/lib_sql.so -%{_libdir}/monetdb5/*.so +%{_libdir}/monetdb5/lib_capi.so +%{_libdir}/monetdb5/lib_generator.so +%{_libdir}/monetdb5/lib_lsst.so +%{_libdir}/monetdb5/lib_opt_sql_append.so +%{_libdir}/monetdb5/lib_udf.so +%{_libdir}/monetdb5/lib_vault.so %doc %{_mandir}/man1/mserver5.1.gz %dir %{_datadir}/doc/MonetDB %docdir %{_datadir}/doc/MonetDB diff --git a/buildtools/selinux/monetdb.te b/buildtools/selinux/monetdb.te --- a/buildtools/selinux/monetdb.te +++ b/buildtools/selinux/monetdb.te @@ -1,7 +1,24 @@ -policy_module(monetdb, 0.2) +policy_module(monetdb, 0.3) # The above line declares that this file is a SELinux policy file. Its # name is monetdb, so the file should be saved as monetdb.te +# Declare the system types and classes we're using. +require { + type proc_net_t; + type tmp_t; + type var_t; + class dir { read }; + class fd { use }; + class fifo_file { getattr read write }; + class file { entrypoint execute getattr manage_file_perms map open read }; + class netlink_selinux_socket create_socket_perms; + class process { rlimitinh siginh signal transition }; + class tcp_socket create_stream_socket_perms; + class udp_socket create_stream_socket_perms; + class unix_dgram_socket create_socket_perms; + class unix_stream_socket { connectto create_stream_socket_perms getopt read shutdown write }; +} + # First, we declare the monetdbd_t domain, used for the "monetdbd" # process. Because it is launched by systemd, we tell the policy that # monetdbd_exec_t (the context of monetdbd), when launched by systemd, @@ -79,6 +96,7 @@ allow monetdbd_t self:udp_socket create_ allow monetdbd_t self:unix_dgram_socket create_socket_perms; allow monetdbd_t self:unix_stream_socket { create_stream_socket_perms connectto }; allow monetdbd_t self:netlink_selinux_socket create_socket_perms; +allow monetdbd_t proc_net_t:file read; manage_dirs_pattern(monetdbd_t, tmp_t, tmp_t) manage_sock_files_pattern(monetdbd_t, tmp_t, tmp_t) manage_sock_files_pattern(monetdbd_t, mserver5_db_t, mserver5_db_t) diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c --- a/gdk/gdk_aggr.c +++ b/gdk/gdk_aggr.c @@ -147,7 +147,7 @@ BATgroupaggrinit(BAT *b, BAT *g, BAT *e, /* -- */ /* sum */ -static inline int +static inline bool samesign(double x, double y) { return (x >= 0) == (y >= 0); @@ -182,13 +182,13 @@ static BUN dofsum(const void *restrict values, oid seqb, BUN start, BUN end, void *restrict results, BUN ngrp, int tp1, int tp2, const oid *restrict cand, const oid *candend, const oid *restrict gids, - oid min, oid max, int skip_nils, int
MonetDB: Mar2018 - Use bool.
Changeset: 7082e38195c2 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7082e38195c2 Modified Files: gdk/gdk_aggr.c Branch: Mar2018 Log Message: Use bool. diffs (truncated from 457 to 300 lines): diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c --- a/gdk/gdk_aggr.c +++ b/gdk/gdk_aggr.c @@ -147,7 +147,7 @@ BATgroupaggrinit(BAT *b, BAT *g, BAT *e, /* -- */ /* sum */ -static inline int +static inline bool samesign(double x, double y) { return (x >= 0) == (y >= 0); @@ -182,13 +182,13 @@ static BUN dofsum(const void *restrict values, oid seqb, BUN start, BUN end, void *restrict results, BUN ngrp, int tp1, int tp2, const oid *restrict cand, const oid *candend, const oid *restrict gids, - oid min, oid max, int skip_nils, int abort_on_error, - int nil_if_empty, const char *func) + oid min, oid max, bool skip_nils, bool abort_on_error, + bool nil_if_empty, const char *func) { struct pergroup { int npartials; int maxpartials; - int valseen; + bool valseen; #ifdef INFINITES_ALLOWED float infs; #else @@ -224,7 +224,7 @@ dofsum(const void *restrict values, oid return BUN_NONE; for (grp = 0; grp < ngrp; grp++) { pergroup[grp].npartials = 0; - pergroup[grp].valseen = 0; + pergroup[grp].valseen = false; pergroup[grp].maxpartials = 2; pergroup[grp].infs = 0; pergroup[grp].partials = GDKmalloc(pergroup[grp].maxpartials * sizeof(double)); @@ -268,7 +268,7 @@ dofsum(const void *restrict values, oid } continue; } - pergroup[grp].valseen = 1; + pergroup[grp].valseen = true; #ifdef INFINITES_ALLOWED if (isinf(x)) { pergroup[grp].infs += x; @@ -476,7 +476,7 @@ dofsum(const void *restrict values, oid goto overflow); \ } \ } else {\ - int seenval = 0;\ + bool seenval = false; \ for (i = start; i < end && nils == 0; i++) { \ x = vals[i];\ if (is_##TYPE1##_nil(x)) { \ @@ -490,7 +490,7 @@ dofsum(const void *restrict values, oid TYPE2, sum, \ GDK_##TYPE2##_max, \ goto overflow); \ - seenval = 1;\ + seenval = true; \ } \ } \ *seen = seenval;\ @@ -500,7 +500,7 @@ dofsum(const void *restrict values, oid } else if (ngrp == 1) { \ /* single group, with candidate list */ \ TYPE2 sum; \ - int seenval = 0;\ + bool seenval = false; \ ALGODEBUG fprintf(stderr, \ "#%s: with candidates, no groups; " \ "start " BUNFMT ", end " BUNFMT \ @@ -523,7 +523,7 @@ dofsum(const void *restrict values, oid TYPE2, sum, \ GDK_##TYPE2##_max, \ goto overflow); \ - seenval = 1;\ + seenval = true; \ } \ } \ if (seenval)\ @@ -609,11 +609,11 @@ dofsum(const void *restrict values, oid } while (0) static BUN -dosum(const void *restrict values, int nonil, oid seqb, BUN start, BUN end, +dosum(const void *restrict values, bool nonil, oid seqb, BUN start, BUN end, void *restrict results, BUN ngrp, int tp1, int tp2,
monetdb-java: default - Settings tag v2.28.
Changeset: f56f3b3ba09e for monetdb-java URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=f56f3b3ba09e Modified Files: .hgtags Branch: default Log Message: Settings tag v2.28. diffs (8 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -2,3 +2,4 @@ 80de05f07508fec938845b4a6e05f600bf0b48c0 c43c293f3d5841517cbe0d858108c4da5fb1ec0c v2.26 a6a2f4ee2d42d7e192f9d8d37f79ea99178d7f2c v2.25 fe8170e2b549c22ceb2d96301022b9304f62424d v2.27 +6423fb0bf9ebba64167ca1b40b79aeacbb8e7c47 v2.28 ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
monetdb-java: default - Updated release numbers in preparation f...
Changeset: 6423fb0bf9eb for monetdb-java URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=6423fb0bf9eb Modified Files: build.properties pom.xml release.txt Branch: default Log Message: Updated release numbers in preparation for a release. diffs (45 lines): diff --git a/build.properties b/build.properties --- a/build.properties +++ b/build.properties @@ -9,7 +9,7 @@ # major release number MCL_MAJOR=1 # minor release number -MCL_MINOR=16 +MCL_MINOR=17 ## @@ -19,7 +19,7 @@ MCL_MINOR=16 # major release number JDBC_MAJOR=2 # minor release number -JDBC_MINOR=27 +JDBC_MINOR=28 # an additional identifying string JDBC_VER_SUFFIX=Liberica # the default port to connect on, if no port given when using SQL diff --git a/pom.xml b/pom.xml --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ monetdb monetdb-jdbc - 2.27 + 2.28 ${project.groupId}:${project.artifactId} MonetDB JDBC driver https://www.monetdb.org diff --git a/release.txt b/release.txt --- a/release.txt +++ b/release.txt @@ -1,6 +1,6 @@ RELEASE NOTES -MonetDB JDBC driver version 2.27 (Liberica/MCL-1.16) -Release date: 2017-10-23 +MonetDB JDBC driver version 2.28 (Liberica/MCL-1.17) +Release date: 2018-05-24 This JDBC driver is designed for use with MonetDB, a main-memory column-store RDBMS. For more information see https://www.monetdb.org/ ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Mar2018 - Added test for Bug 6608
Changeset: 232e9b446772 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=232e9b446772 Added Files: sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out Modified Files: sql/test/BugTracker-2018/Tests/All Branch: Mar2018 Log Message: Added test for Bug 6608 diffs (116 lines): diff --git a/sql/test/BugTracker-2018/Tests/All b/sql/test/BugTracker-2018/Tests/All --- a/sql/test/BugTracker-2018/Tests/All +++ b/sql/test/BugTracker-2018/Tests/All @@ -62,3 +62,4 @@ sqlitelogictest-select-not-in-wrong.Bug- sqlitelogictest-groupby-distinct-duplicate.Bug-6603 procedure-create-table.Bug-6604 sqlitelogictest-cast-null-not-in.Bug-6605 +sqlitelogictest-groupby-coalesce-error-message.Bug-6608 diff --git a/sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.sql b/sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.sql new file mode 100644 --- /dev/null +++ b/sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.sql @@ -0,0 +1,18 @@ +CREATE TABLE tab0(col0 INTEGER, col1 INTEGER, col2 INTEGER); +CREATE TABLE tab1(col0 INTEGER, col1 INTEGER, col2 INTEGER); + +INSERT INTO tab0 VALUES (83,0,38), (26,0,79), (43,81,24); +INSERT INTO tab1 VALUES (22,6,8), (28,57,45), (82,44,71); + +SELECT DISTINCT - COALESCE ( - 86, + cor0.col1, cor0.col1, - cor0.col0 ) AS col2 FROM tab0 AS cor0 GROUP BY cor0.col2, cor0.col0; + +SELECT ALL + 33 * - COALESCE ( - 86, tab1.col2 ) + + col1 FROM tab1 GROUP BY tab1.col1; + +SELECT ALL + COALESCE ( - cor0.col1, cor0.col1, 63, - cor0.col2 ) * - cor0.col1 AS col1 FROM tab0 cor0 GROUP BY cor0.col0, col1; + +SELECT - 38 + - tab1.col1 - tab1.col1 / COALESCE ( + 20, - tab1.col0 ) FROM tab1 GROUP BY tab1.col1; + +SELECT DISTINCT COALESCE ( - 82, - cor0.col0, - CAST ( NULL AS INTEGER ) ) / - 70 FROM tab0 AS cor0 GROUP BY cor0.col2; + +DROP TABLE tab0; +DROP TABLE tab1; diff --git a/sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out b/sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out new file mode 100644 --- /dev/null +++ b/sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out @@ -0,0 +1,80 @@ +stdout of test 'sqlitelogictest-groupby-coalesce-error-message.Bug-6608` in directory 'sql/test/BugTracker-2018` itself: + + +# 09:40:19 > +# 09:40:19 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=34045" "--set" "mapi_usock=/var/tmp/mtest-13348/.s.monetdb.34045" "--set" "monet_prompt=" "--forcemito" "--dbpath=/home/ferreira/repositories/MonetDB-Mar2018/BUILD/var/MonetDB/mTests_sql_test_BugTracker-2018" "--set" "embedded_c=true" +# 09:40:19 > + +# MonetDB 5 server v11.29.4 +# This is an unreleased version +# Serving database 'mTests_sql_test_BugTracker-2018', using 8 threads +# Compiled for x86_64-pc-linux-gnu/64bit with 128bit integers +# Found 15.492 GiB available main-memory. +# Copyright (c) 1993 - July 2008 CWI. +# Copyright (c) August 2008 - 2018 MonetDB B.V., all rights reserved +# Visit https://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://dhcp-193.eduroam.cwi.nl:34045/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-13348/.s.monetdb.34045 +# MonetDB/GIS module loaded +# MonetDB/SQL module loaded + +Ready. +# SQL catalog created, loading sql scripts once +# loading sql script: 09_like.sql +# loading sql script: 10_math.sql +# loading sql script: 11_times.sql +# loading sql script: 12_url.sql +# loading sql script: 13_date.sql +# loading sql script: 14_inet.sql +# loading sql script: 15_querylog.sql +# loading sql script: 16_tracelog.sql +# loading sql script: 17_temporal.sql +# loading sql script: 18_index.sql +# loading sql script: 20_vacuum.sql +# loading sql script: 21_dependency_functions.sql +# loading sql script: 21_dependency_views.sql +# loading sql script: 22_clients.sql +# loading sql script: 23_skyserver.sql +# loading sql script: 25_debug.sql +# loading sql script: 26_sysmon.sql +# loading sql script: 27_rejects.sql +# loading sql script: 39_analytics.sql +# loading sql script: 39_analytics_hge.sql +# loading sql script: 40_geom.sql +# loading sql script: 40_json.sql +# loading sql script: 40_json_hge.sql +# loading sql script: 41_md5sum.sql +# loading sql script: 45_uuid.sql +# loading sql script: 46_profiler.sql +# loading sql script: 51_sys_schema_extension.sql +# loading sql script: 60_wlcr.sql +# loading sql script: 72_fits.sql +# loading sql script: 74_netcdf.sql +# loading sql script: 75_lidar.sql +# loading sql script: 75_shp.sql +# loading sql script: 75_storagemodel.sql +# loading sql script: 80_statistics.sql