Changeset: 0b290c85ec83 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0b290c85ec83
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
gdk/gdk_bbp.c
monetdb5/mal/mal_profiler.c
monetdb5/modules/atoms/str.c
monetdb5/modules/kernel/batstr.c
monetdb5/optimizer/opt_mergetable.c
monetdb5/optimizer/opt_remap.c
sql/backends/monet5/UDF/pyapi3/conversion3.c
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql.h
sql/backends/monet5/sql_cat.c
sql/backends/monet5/sql_optimizer.c
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_statistics.c
sql/backends/monet5/sql_upgrades.c
sql/common/sql_types.c
sql/server/rel_updates.c
sql/server/sql_mvc.h
sql/storage/bat/bat_storage.c
sql/test/BugTracker-2014/Tests/manifold.Bug-3556.stable.out
sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out
sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out.single
sql/test/SQLancer/Tests/sqlancer01.stable.out
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/sys-schema/Tests/systemfunctions.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
Branch: unlock
Log Message:
merged with default
diffs (truncated from 156371 to 300 lines):
diff --git a/.editorconfig b/.editorconfig
--- a/.editorconfig
+++ b/.editorconfig
@@ -1,3 +1,5 @@
+root = true
+
# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
@@ -16,7 +18,3 @@ indent_style = space
indent_size = 4
trim_trailing_whitespace = true
charset = utf-8
-
-[gdk/*.{c,h}]
-tab_width = 8
-max_line_length = 72
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -140,6 +140,13 @@ BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(libpcre) >= 4.5
%endif
BuildRequires: pkgconfig(zlib)
+%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} > 7
+# not on RHEL 7
+BuildRequires: pkgconfig(liblz4) >= 1.8
+%global LZ4 ON
+%else
+%global LZ4 OFF
+%endif
%if %{with py3integration}
BuildRequires: pkgconfig(python3) >= 3.5
BuildRequires: python3-numpy
@@ -149,8 +156,6 @@ BuildRequires: pkgconfig(libR)
%endif
# if we were to compile with cmocka support (-DWITH_CMOCKA=ON):
# BuildRequires: pkgconfig(cmocka)
-# if we were to compile with lz4 support (-DWITH_LZ4=ON):
-# BuildRequires: pkgconfig(liblz4)
# if we were to compile with NetCDF support (-DNETCDF=ON):
# BuildRequires: pkgconfig(netcdf)
# if we were to compile with proj support (-DWITH_PROJ=ON):
@@ -784,8 +789,6 @@ export CFLAGS
%endif
%cmake3 \
-DRELEASE_VERSION=ON \
- -DRUNDIR=%{_rundir}/monetdb \
- -DLOGDIR=%{_localstatedir}/log/monetdb \
-DASSERT=OFF \
-DCINTEGRATION=%{?with_cintegration:ON}%{!?with_cintegration:OFF} \
-DFITS=%{?with_fits:ON}%{!?with_fits:OFF} \
@@ -803,7 +806,7 @@ export CFLAGS
-DWITH_CMOCKA=OFF \
-DWITH_CRYPTO=ON \
-DWITH_CURL=ON \
- -DWITH_LZ4=OFF \
+ -DWITH_LZ4=%{LZ4} \
-DWITH_LZMA=ON \
-DWITH_PCRE=ON \
-DWITH_PROJ=OFF \
@@ -817,7 +820,10 @@ export CFLAGS
%cmake3_build
%install
+mkdir -p "%{buildroot}/usr"
+for d in etc var; do mkdir "%{buildroot}/$d"; ln -s ../$d
"%{buildroot}/usr/$d"; done
%cmake3_install
+rm "%{buildroot}/usr/var" "%{buildroot}/usr/etc"
# move file to correct location
%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
diff --git a/buildtools/conf/monetdbd.conf.in b/buildtools/conf/monetdbd.conf.in
--- a/buildtools/conf/monetdbd.conf.in
+++ b/buildtools/conf/monetdbd.conf.in
@@ -1,3 +1,3 @@
# this file is for systemd
# monetdbd needs a directory in /run that is owned by monetdb:monetdb
-d @RUNDIR@ 0775 monetdb monetdb -
+d @CMAKE_INSTALL_FULL_RUNSTATEDIR@/monetdb 0775 monetdb monetdb -
diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -1125,6 +1125,7 @@ str batpyapi3Ref;
str batrapiRef;
str batsqlRef;
str batstrRef;
+bool batstr_func_has_candidates(const char *func);
str batxmlRef;
str bbpRef;
str betweenRef;
diff --git a/cmake/monetdb-deb-packages.cmake b/cmake/monetdb-deb-packages.cmake
--- a/cmake/monetdb-deb-packages.cmake
+++ b/cmake/monetdb-deb-packages.cmake
@@ -8,7 +8,7 @@
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "MonetDB BV <[email protected]>")
set(CPACK_DEB_COMPONENT_INSTALL ON)
-set(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS ON)
+set(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS OFF)
set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT)
set(CPACK_DEBIAN_PACKAGE_SECTION "misc")
set(CPACK_DEBIAN_PACKAGE_SOURCE "monetdb")
@@ -171,18 +171,6 @@ set(CPACK_DEBIAN_SERVER_PACKAGE_CONTROL_
${CMAKE_CURRENT_SOURCE_DIR}/debian/monetdb5-server.postinst
)
-set(CPACK_DEBIAN_HUGEINT_PACKAGE_NAME "monetdb5-server-hugeint")
-set(CPACK_DEBIAN_HUGEINT_PACKAGE_DEPENDS "monetdb5-server (=
\\\${source:Version})")
-set(CPACK_DEBIAN_HUGEINT_PACKAGE_ARCHITECTURE "amd64")
-set(CPACK_COMPONENT_HUGEINT_DESCRIPTION "MonetDB - 128-bit integer support for
MonetDB5-server
- MonetDB is a database management system that is developed from a
- main-memory perspective with use of a fully decomposed storage model,
- automatic index management, extensibility of data types and search
- accelerators. It also has an SQL front end.
- .
- This package provides HUGEINT (128-bit integer) support for the
- MonetDB5-server component.")
-
set(CPACK_DEBIAN_SERVERDEV_PACKAGE_NAME "monetdb5-server-dev")
set(CPACK_DEBIAN_SERVERDEV_PACKAGE_DEPENDS "\\\${shlibs:Depends},
\\\${misc:Depends},
monetdb5-server (= \\\${source:Version}), libmonetdb-dev (=
\\\${source:Version})")
@@ -200,8 +188,6 @@ set(CPACK_DEBIAN_SQL_PACKAGE_DEPENDS
"\\\${shlibs:Depends}"
"\\\${misc:Depends}"
"monetdb5-server (= \\\${source:Version})")
-set(CPACK_DEBIAN_SQL_PACKAGE_RECOMMENDS
- "monetdb5-sql-hugeint (= \\\${source:Version}) [amd64]")
set(CPACK_DEBIAN_SQL_PACKAGE_SUGGEST "monetdb-client (= \\\${source:Version})")
set(CPACK_COMPONENT_SQL_DESCRIPTION "MonetDB SQL support for monetdb5
MonetDB is a database management system that is developed from a
@@ -218,20 +204,6 @@ set(CPACK_DEBIAN_SQL_PACKAGE_CONTROL_FIL
${CMAKE_CURRENT_SOURCE_DIR}/debian/monetdb5-sql.postinst
)
-set(CPACK_DEBIAN_SQLINT128_PACKAGE_NAME "monetdb5-sql-hugeint")
-set(CPACK_DEBIAN_SQLINT128_PACKAGE_DEPENDS
- "monetdb5-sql (= \\\${source:Version})"
- "monetdb5-server-hugeint (= \\\${source:Version})")
-set(CPACK_DEBIAN_SQLINT128_PACKAGE_ARCHITECTURE "amd64")
-set(CPACK_COMPONENT_SQLINT128_DESCRIPTION "MonetDB5 128 bit integer (hugeint)
support for SQL
- MonetDB is a database management system that is developed from a
- main-memory perspective with use of a fully decomposed storage model,
- automatic index management, extensibility of data types and search
- accelerators. It also has an SQL front end.
- .
- This package provides HUGEINT (128-bit integer) support for the SQL
- front end of MonetDB.")
-
set(CPACK_DEBIAN_PYAPI3_PACKAGE_NAME "monetdb-python3")
set(CPACK_DEBIAN_PYAPI3_PACKAGE_DEPENDS
"\\\${shlibs:Depends}"
diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake
--- a/cmake/monetdb-defines.cmake
+++ b/cmake/monetdb-defines.cmake
@@ -206,7 +206,6 @@ macro(monetdb_macro_variables)
set(BINDIR "${CMAKE_INSTALL_FULL_BINDIR}")
set(LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}")
set(DATADIR "${CMAKE_INSTALL_FULL_DATADIR}")
- set(DATA_DIR "${CMAKE_INSTALL_FULL_DATADIR}")
set(LOCALSTATEDIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}")
if(WIN32)
# Fix cmake conversions
@@ -219,22 +218,12 @@ macro(monetdb_macro_variables)
endif()
set(DATAROOTDIR "${CMAKE_INSTALL_FULL_DATAROOTDIR}")
- set(BIN_DIR "${CMAKE_INSTALL_FULL_BINDIR}")
set(INCLUDEDIR "${CMAKE_INSTALL_FULL_INCLUDEDIR}")
set(INFODIR "${CMAKE_INSTALL_FULL_INFODIR}")
- set(LIB_DIR "${CMAKE_INSTALL_FULL_LIBDIR}")
set(LIBEXECDIR "${CMAKE_INSTALL_FULL_LIBEXECDIR}")
- set(LOCALSTATE_DIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}")
# set(MANDIR "${CMAKE_INSTALL_FULL_MANDIR}")
set(SYSCONFDIR "${CMAKE_INSTALL_FULL_SYSCONFDIR}")
- set(LOGDIR "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/log/monetdb"
- CACHE PATH
- "Where to put log files (default LOCALSTATEDIR/log/monetdb)")
set(PKGCONFIGDIR "${LIBDIR}/pkgconfig")
- set(RUNDIR
- "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/run/monetdb"
- CACHE PATH
- "Where to put pid files (default LOCALSTATEDIR/run/monetdb)")
endmacro()
macro(monetdb_configure_crypto)
diff --git a/cmake/monetdb-rpm-packages.cmake b/cmake/monetdb-rpm-packages.cmake
--- a/cmake/monetdb-rpm-packages.cmake
+++ b/cmake/monetdb-rpm-packages.cmake
@@ -20,6 +20,7 @@ set(CPACK_RPM_PACKAGE_LICENSE "MPLv2.0")
set(CPACK_RPM_PACKAGE_GROUP "Applications/Databases")
set(CPACK_RPM_PACKAGE_URL "https://www.monetdb.org/")
set(CPACK_RPM_CHANGELOG_FILE "${CMAKE_SOURCE_DIR}/misc/packages/rpm/changelog")
+set(CPACK_RPM_PACKAGE_RELOCATABLE OFF)
set(CPACK_RPM_monetdb_PACKAGE_NAME "${CMAKE_PROJECT_NAME}")
set(CPACK_RPM_monetdb_FILE_NAME "${CMAKE_PROJECT_NAME}-${MONETDB_VERSION}.rpm")
@@ -87,18 +88,13 @@ set(CPACK_RPM_server_PACKAGE_NAME "Monet
set(CPACK_RPM_server_FILE_NAME
"${CPACK_RPM_server_PACKAGE_NAME}-${MONETDB_VERSION}.rpm")
set(CPACK_RPM_server_PACKAGE_SUMMARY "MonetDB - Monet Database Management
System")
set(CPACK_RPM_server_PACKAGE_REQUIRES "%{name}-client%{?_isa} =
%{version}-%{release}")
-# TODO: check for hugeint
-set(CPACK_RPM_server_PACKAGE_RECOMMENDS "%{name}-SQL-server5%{?_isa} =
%{version}-%{release}, MonetDB5-server-hugeint%{?_isa} = %{version}-%{release}")
+set(CPACK_RPM_server_PACKAGE_RECOMMENDS "%{name}-SQL-server5%{?_isa} =
%{version}-%{release}")
+
set(CPACK_RPM_server_PACKAGE_SUGGESTS "%{name}-client%{?_isa} =
%{version}-%{release}")
set(CPACK_RPM_server_PACKAGE_CONFLICTS "python-pymonetdb < 1.0.6")
# TODO: check for rhel
set(CPACK_RPM_server_PACKAGE_REQUIRES_PRE "shadow-utils, systemd")
-set(CPACK_RPM_hugeint_PACKAGE_NAME "MonetDB5-server-hugeint")
-set(CPACK_RPM_hugeint_FILE_NAME
"${CPACK_RPM_hugeint_PACKAGE_NAME}-${MONETDB_VERSION}.rpm")
-set(CPACK_RPM_hugeint_PACKAGE_SUMMARY "MonetDB - 128-bit integer support for
MonetDB5-server")
-set(CPACK_RPM_hugeint_PACKAGE_REQUIRES "MonetDB5-server%{?_isa}")
-
set(CPACK_RPM_serverdev_PACKAGE_NAME "MonetDB5-server-devel")
set(CPACK_RPM_serverdev_FILE_NAME
"${CPACK_RPM_serverdev_PACKAGE_NAME}-${MONETDB_VERSION}.rpm")
set(CPACK_RPM_serverdev_PACKAGE_SUMMARY "MonetDB development files")
@@ -108,16 +104,9 @@ set(CPACK_RPM_sql_PACKAGE_NAME "SQL-serv
set(CPACK_RPM_sql_FILE_NAME
"${CMAKE_PROJECT_NAME}-${CPACK_RPM_sql_PACKAGE_NAME}-${MONETDB_VERSION}.rpm")
set(CPACK_RPM_sql_PACKAGE_SUMMARY "MonetDB5 SQL server modules")
set(CPACK_RPM_sql_PACKAGE_REQUIRES_PRE "MonetDB5-server%{?_isa} =
%{version}-%{release}")
-# TODO: check hugeint
-set(CPACK_RPM_sql_PACKAGE_RECOMMENDS "%{name}-SQL-server5-hugeint%{?_isa} =
%{version}-%{release}")
set(CPACK_RPM_sql_PACKAGE_SUGGESTS "%{name}-client%{?_isa} =
%{version}-%{release}")
# TODO: systemd_requires?
-set(CPACK_RPM_sqlint128_PACKAGE_NAME "SQL-server5-hugeint")
-set(CPACK_RPM_sqlint128_FILE_NAME
"${CMAKE_PROJECT_NAME}-${CPACK_RPM_sqlint128_PACKAGE_NAME}-${MONETDB_VERSION}.rpm")
-set(CPACK_RPM_sqlint128_PACKAGE_SUMMARY "MonetDB5 128 bit integer (hugeint)
support for SQL")
-set(CPACK_RPM_sqlint128_PACKAGE_REQUIRES "MonetDB5-server-hugeint%{?_isa} =
%{version}-%{release}, MonetDB-SQL-server5%{?_isa} = %{version}-%{release}")
-
set(CPACK_RPM_testing_PACKAGE_NAME "testing")
set(CPACK_RPM_testing_FILE_NAME
"${CMAKE_PROJECT_NAME}-${CPACK_RPM_testing_PACKAGE_NAME}-${MONETDB_VERSION}.rpm")
set(CPACK_RPM_TESTING_PACKAGE_SUMMARY "MonetDB - Monet Database Management
System")
diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -7,7 +7,7 @@ Vcs-Browser: https://dev.monetdb.org/hg/
Vcs-Hg: https://dev.monetdb.org/hg/MonetDB/
Build-Depends: debhelper (>= 9), cmake (>= 3.12), bison,
libbz2-dev, libcurl4-gnutls-dev, libgeos-dev (>= 3.4.0),
- libpcre3-dev, libreadline-dev, liblzma-dev,
+ libpcre3-dev, libreadline-dev, liblzma-dev, liblz4-dev (>= 1.8.0),
libssl-dev, libxml2-dev, pkg-config,
python3, python3-dev, python3-numpy,
unixodbc-dev, uuid-dev, zlib1g-dev, r-base-dev,
diff --git a/debian/rules b/debian/rules
--- a/debian/rules
+++ b/debian/rules
@@ -14,8 +14,6 @@ DH_VERBOSE=1
override_dh_auto_configure:
dh_auto_configure -- \
-DRELEASE_VERSION=ON \
- -DRUNDIR=/run/monetdb \
- -DLOGDIR=/var/log/monetdb \
-DASSERT=OFF \
-DCINTEGRATION=ON \
-DFITS=ON \
@@ -33,7 +31,7 @@ override_dh_auto_configure:
-DWITH_CMOCKA=OFF \
-DWITH_CRYPTO=ON \
-DWITH_CURL=ON \
- -DWITH_LZ4=OFF \
+ -DWITH_LZ4=ON \
-DWITH_LZMA=ON \
-DWITH_PCRE=ON \
-DWITH_PROJ=OFF \
diff --git a/gdk/.editorconfig b/gdk/.editorconfig
new file mode 100644
--- /dev/null
+++ b/gdk/.editorconfig
@@ -0,0 +1,3 @@
+[*.{c,h}]
+tab_width = 8
+max_line_length = 72
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -3682,6 +3682,10 @@ BBPdiskscan(const char *parent, size_t b
/* older versions used .thash which we
* can simply ignore */
delete = true;
+ } else if (strncmp(p + 1, "thsh", 4) == 0) {
+ /* temporary hash files which we can
+ * simply ignore */
+ delete = true;
} else if (strncmp(p + 1, "timprints", 9) == 0) {
BAT *b = getdesc(bid);
delete = b == NULL;
diff --git a/misc/selinux/monetdb.fc.in b/misc/selinux/monetdb.fc.in
--- a/misc/selinux/monetdb.fc.in
+++ b/misc/selinux/monetdb.fc.in
@@ -1,7 +1,7 @@
@CMAKE_INSTALL_FULL_BINDIR@/monetdbd --
gen_context(system_u:object_r:monetdbd_exec_t,s0)
@CMAKE_INSTALL_FULL_BINDIR@/mserver5 --
gen_context(system_u:object_r:mserver5_exec_t,s0)
@CMAKE_INSTALL_FULL_LIBDIR@/systemd/system/monetdbd.*
gen_context(system_u:object_r:monetdbd_unit_file_t,s0)
-@LOGDIR@(/.*)?
gen_context(system_u:object_r:monetdbd_log_t,s0)
+@CMAKE_INSTALL_FULL_LOCALSTATEDIR@/log/monetdb(/.*)?
gen_context(system_u:object_r:monetdbd_log_t,s0)
# for some reason we cannot use /run/monetdb here, even though that is the
real name
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list