Changeset: eaa5d8fea598 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=eaa5d8fea598
Added Files:
sql/test/miscellaneous/Tests/declared_tables.sql
sql/test/miscellaneous/Tests/declared_tables.stable.err
sql/test/miscellaneous/Tests/declared_tables.stable.out
sql/test/sys-schema/Tests/bam_tables_checks.sql
sql/test/sys-schema/Tests/bam_tables_checks.stable.err
sql/test/sys-schema/Tests/bam_tables_checks.stable.out
sql/test/sys-schema/Tests/check_Not_Nullable_columns.sql
sql/test/sys-schema/Tests/check_Not_Nullable_columns.stable.err
sql/test/sys-schema/Tests/check_Not_Nullable_columns.stable.out
sql/test/sys-schema/Tests/geom_tables_checks.sql
sql/test/sys-schema/Tests/geom_tables_checks.stable.err
sql/test/sys-schema/Tests/geom_tables_checks.stable.out
tools/merovingian/daemon/config/.merovingian_properties.in
tools/merovingian/daemon/config/Makefile.ag
tools/merovingian/daemon/config/monetdbd.in
tools/merovingian/daemon/config/monetdbd.service.in
Removed Files:
tools/merovingian/daemon/.merovingian_properties.in
tools/merovingian/daemon/monetdbd.service.in
Modified Files:
MonetDB.spec
debian/monetdb5-sql.install
debian/rules
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
monetdb5/optimizer/opt_pipes.c
sql/backends/monet5/sql_cat.c
sql/server/rel_schema.c
sql/server/rel_semantic.c
sql/test/Tests/setoptimizer.stable.out
sql/test/miscellaneous/Tests/All
sql/test/sys-schema/Tests/All
sql/test/sys-schema/Tests/check_PrimaryKey_uniqueness.stable.out
tools/merovingian/ChangeLog.Aug2018
tools/merovingian/daemon/Makefile.ag
tools/mserver/mserver5.1.in
tools/mserver/shutdowntest.c
Branch: analytics
Log Message:
Merge with default.
diffs (truncated from 1794 to 300 lines):
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -1,9 +1,9 @@
-%define name MonetDB
-%define version 11.32.0
+%global name MonetDB
+%global version 11.32.0
%{!?buildno: %global buildno %(date +%Y%m%d)}
-# Use %bcond_with to add a --with option; i.e., "without" is default.
-# Use %bcond_without to add a --without option; i.e., "with" is default.
+# Use bcond_with to add a --with option; i.e., "without" is default.
+# Use bcond_without to add a --without option; i.e., "with" is default.
# The --with OPTION and --without OPTION arguments can be passed on
# the commandline of both rpmbuild and mock.
@@ -12,12 +12,12 @@
%bcond_without hugeint
%endif
-%define release %{buildno}%{?dist}
+%global release %{buildno}%{?dist}
# On RedHat Enterprise Linux and derivatives, if the Extra Packages
# for Enterprise Linux (EPEL) repository is available, you can enable
# its use by providing rpmbuild or mock with the "--with epel" option.
-# If the EPEL repository is availabe, or if building for Fedora, all
+# If the EPEL repository is availabe, or if building for Fedora, most
# optional sub packages can be built. We indicate that here by
# setting the macro fedpkgs to 1. If the EPEL repository is not
# available and we are not building for Fedora, we set fedpkgs to 0.
@@ -26,14 +26,14 @@
%bcond_with epel
%if %{with epel}
# EPEL is enabled through the command line
-%define fedpkgs 1
+%global fedpkgs 1
%else
# EPEL is not enabled
-%define fedpkgs 0
+%global fedpkgs 0
%endif
%else
# Not RHEL (so presumably Fedora)
-%define fedpkgs 1
+%global fedpkgs 1
%endif
# On Fedora, the geos library is available, and so we can require it
@@ -45,6 +45,7 @@
# up-to-date version of RHEL.
%if %{fedpkgs}
%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
+# By default create the MonetDB-geom-MonetDB5 package on Fedora and RHEL 7
%bcond_without geos
%endif
%endif
@@ -75,7 +76,7 @@
%bcond_without pcre
%if %{fedpkgs}
-# By default, create teh MonetDB-R package.
+# By default, create the MonetDB-R package.
%bcond_without rintegration
%endif
@@ -93,13 +94,6 @@
%{!?__python2: %global __python2 %__python}
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from
distutils.sysconfig import get_python_lib; print(get_python_lib())")}
-# python3 option not currently used
-# %if 0%{?fedora}
-# %bcond_without python3
-# %else
-# %bcond_with python3
-# %endif
-
Name: %{name}
Version: %{version}
Release: %{release}
@@ -425,8 +419,6 @@ developer.
Summary: MonetDB5 SQL GIS support module
Group: Applications/Databases
Requires: MonetDB5-server%{?_isa} = %{version}-%{release}
-Obsoletes: %{name}-geom
-Obsoletes: %{name}-geom-devel
%description geom-MonetDB5
MonetDB is a database management system that is developed from a
@@ -593,22 +585,10 @@ to use the SQL frontend, you also need %
%pre -n MonetDB5-server
getent group monetdb >/dev/null || groupadd -r monetdb
getent passwd monetdb >/dev/null || \
-useradd -r -g monetdb -d %{_localstatedir}/MonetDB -s /sbin/nologin \
- -c "MonetDB Server" monetdb
+ useradd -r -g monetdb -d %{_localstatedir}/MonetDB -s /sbin/nologin \
+ -c "MonetDB Server" monetdb
exit 0
-%post -n MonetDB5-server
-# move database from old location to new location
-if [ -d %{_localstatedir}/MonetDB5/dbfarm -a !
%{_localstatedir}/MonetDB5/dbfarm -ef %{_localstatedir}/monetdb5/dbfarm ]; then
- # old database exists and is different from new
- if [ $(find %{_localstatedir}/monetdb5 -print | wc -l) -le 2 ]; then
- # new database is still empty
- rmdir %{_localstatedir}/monetdb5/dbfarm
- rmdir %{_localstatedir}/monetdb5
- mv %{_localstatedir}/MonetDB5 %{_localstatedir}/monetdb5
- fi
-fi
-
%files -n MonetDB5-server
%defattr(-,root,root)
%attr(750,monetdb,monetdb) %dir %{_localstatedir}/MonetDB
@@ -751,6 +731,7 @@ systemd-tmpfiles --create %{_sysconfdir}
# RHEL >= 7, and all current Fedora
%{_sysconfdir}/tmpfiles.d/monetdbd.conf
%{_unitdir}/monetdbd.service
+%config(noreplace) %attr(644,root,root) %{_sysconfdir}/logrotate.d/monetdbd
%else
# RedHat Enterprise Linux < 7
%dir %attr(775,monetdb,monetdb) %{_localstatedir}/run/monetdb
@@ -970,7 +951,7 @@ fi
--with-valgrind=no \
%{?comp_cc:CC="%{comp_cc}"}
-make %{?_smp_mflags}
+%make_build
%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
cd buildtools/selinux
diff --git a/debian/monetdb5-sql.install b/debian/monetdb5-sql.install
--- a/debian/monetdb5-sql.install
+++ b/debian/monetdb5-sql.install
@@ -3,6 +3,7 @@ debian/tmp/usr/bin/monetdb usr/bin
debian/tmp/usr/lib/monetdb5/*.sql usr/lib/monetdb5
debian/tmp/usr/lib/monetdb5/autoload/??_sql.mal usr/lib/monetdb5/autoload
debian/tmp/usr/lib/systemd/system/monetdbd.service lib/systemd/system
+debian/tmp/etc/logrotate.d/monetdbd etc/logrotate.d
debian/tmp/etc/tmpfiles.d/monetdbd.conf etc/tmpfiles.d
# usr/lib/monetdb5/sql*.mal EXCEPT: sql*_hge.mal
debian/tmp/usr/lib/monetdb5/sql.mal usr/lib/monetdb5
diff --git a/debian/rules b/debian/rules
--- a/debian/rules
+++ b/debian/rules
@@ -28,10 +28,13 @@ override_dh_auto_configure:
--enable-netcdf=no \
--enable-odbc=yes \
--enable-optimize=yes \
+ --enable-py3integration=no \
--enable-pyintegration=yes \
--enable-rintegration=yes \
+ --enable-sanitizer=no \
--enable-shp=no \
--enable-sql=yes \
+ --enable-static-analysis=no \
--enable-strict=no \
--enable-testing=yes \
--with-bz2=yes \
@@ -40,6 +43,7 @@ override_dh_auto_configure:
--with-geos=yes \
--with-liblas=yes \
--with-libxml2=yes \
+ --with-lz4=no \
--with-lzma=yes \
--with-openssl=yes \
--with-proj=no \
@@ -49,6 +53,7 @@ override_dh_auto_configure:
--with-readline=yes \
--with-regex=PCRE \
--with-samtools=yes \
+ --with-snappy=no \
--with-unixodbc=yes \
--with-uuid=yes \
--with-valgrind=no \
diff --git
a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
--- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
+++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
@@ -55,7 +55,7 @@ Ready.
% def # name
% clob # type
% 560 # length
-[
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.reorder();optimizer.deadcode();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();"
]
+[
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();"
]
#explain copy into ttt from '/tmp/xyz';
% .explain # table_name
% mal # name
@@ -114,7 +114,7 @@ end user.s10_1;
% def # name
% clob # type
% 583 # length
-[
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.reorder();optimizer.deadcode();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.sql_append();optimizer.garbageCollector();"
]
+[
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.sql_append();optimizer.garbageCollector();"
]
#explain copy into ttt from '/tmp/xyz';
% .explain # table_name
% mal # name
diff --git a/monetdb5/optimizer/opt_pipes.c b/monetdb5/optimizer/opt_pipes.c
--- a/monetdb5/optimizer/opt_pipes.c
+++ b/monetdb5/optimizer/opt_pipes.c
@@ -158,8 +158,8 @@ static struct PIPELINES {
"optimizer.constants();"
"optimizer.commonTerms();"
"optimizer.projectionpath();"
+ "optimizer.deadcode();"
"optimizer.reorder();"
- "optimizer.deadcode();"
// "optimizer.reduce();" deprecated
"optimizer.matpack();"
"optimizer.dataflow();"
@@ -200,8 +200,8 @@ static struct PIPELINES {
"optimizer.constants();"
"optimizer.commonTerms();"
"optimizer.projectionpath();"
+ "optimizer.deadcode();"
"optimizer.reorder();"
- "optimizer.deadcode();"
// "optimizer.reduce();" deprecated
"optimizer.matpack();"
"optimizer.querylog();"
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
@@ -1532,7 +1532,7 @@ SQLcomment_on(Client cntxt, MalBlkPtr mb
if (!id_col || !remark_col)
throw(SQL, "sql.comment_on", SQLSTATE(3F000) "no table
sys.comments");
rid = table_funcs.column_find_row(tx, id_col, &objid, NULL);
- if (remark != NULL && *remark) {
+ if (remark != NULL && *remark && strcmp(remark, str_nil) != 0) {
if (!is_oid_nil(rid)) {
// have new remark and found old one, so update field
/* UPDATE sys.comments SET remark = %s WHERE id = %d */
diff --git a/sql/server/rel_schema.c b/sql/server/rel_schema.c
--- a/sql/server/rel_schema.c
+++ b/sql/server/rel_schema.c
@@ -2476,6 +2476,7 @@ rel_schemas(mvc *sql, symbol *s)
l->h->next->data.i_val, /* drop_action */
l->h->next->next->data.i_val); /* if exists */
} break;
+ case SQL_DECLARE_TABLE:
case SQL_CREATE_TABLE:
{
dlist *l = s->data.lval;
diff --git a/sql/server/rel_semantic.c b/sql/server/rel_semantic.c
--- a/sql/server/rel_semantic.c
+++ b/sql/server/rel_semantic.c
@@ -129,6 +129,7 @@ rel_semantic(mvc *sql, symbol *s)
case SQL_CREATE_SCHEMA:
case SQL_DROP_SCHEMA:
+ case SQL_DECLARE_TABLE:
case SQL_CREATE_TABLE:
case SQL_CREATE_VIEW:
case SQL_DROP_TABLE:
diff --git a/sql/test/Tests/setoptimizer.stable.out
b/sql/test/Tests/setoptimizer.stable.out
--- a/sql/test/Tests/setoptimizer.stable.out
+++ b/sql/test/Tests/setoptimizer.stable.out
@@ -68,8 +68,8 @@ Ready.
[ "minimal_pipe",
"optimizer.inline();optimizer.remap();optimizer.deadcode();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.garbageCollector();",
"stable" ]
[ "default_pipe",
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();",
"stable" ]
[ "volcano_pipe",
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.volcano();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();",
"stable" ]
-[ "no_mitosis_pipe",
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.reorder();optimizer.deadcode();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();",
"stable" ]
-[ "sequential_pipe",
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.reorder();optimizer.deadcode();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();",
"stable" ]
+[ "no_mitosis_pipe",
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();",
"stable" ]
+[ "sequential_pipe",
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.postfix();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();",
"stable" ]
# 02:57:35 >
# 02:57:35 > "Done."
diff --git a/sql/test/miscellaneous/Tests/All b/sql/test/miscellaneous/Tests/All
--- a/sql/test/miscellaneous/Tests/All
+++ b/sql/test/miscellaneous/Tests/All
@@ -1,2 +1,3 @@
+declared_tables
#now
trace_test
diff --git a/sql/test/miscellaneous/Tests/declared_tables.sql
b/sql/test/miscellaneous/Tests/declared_tables.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/miscellaneous/Tests/declared_tables.sql
@@ -0,0 +1,6 @@
+start transaction;
+declare table iamdeclared (a int, b varchar(16));
+insert into iamdeclared values (1, 'one');
+select a, b from iamdeclared;
+drop table iamdeclared;
+rollback;
diff --git a/sql/test/miscellaneous/Tests/declared_tables.stable.err
b/sql/test/miscellaneous/Tests/declared_tables.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/miscellaneous/Tests/declared_tables.stable.err
@@ -0,0 +1,35 @@
+stderr of test 'declared_tables` in directory 'sql/test/miscellaneous` itself:
+
+
+# 14:29:32 >
+# 14:29:32 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"mapi_open=true" "--set" "mapi_port=39353" "--set"
"mapi_usock=/var/tmp/mtest-20678/.s.monetdb.39353" "--set" "monet_prompt="
"--forcemito"
"--dbpath=/home/ferreira/repositories/MonetDB-Aug2018/BUILD/var/MonetDB/mTests_sql_test_miscellaneous"
"--set" "embedded_c=true"
+# 14:29:32 >
+
+# builtin opt gdk_dbpath =
/home/ferreira/repositories/MonetDB-Aug2018/BUILD/var/monetdb5/dbfarm/demo
+# builtin opt gdk_debug = 0
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list