Changeset: 8f0ed6e64146 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8f0ed6e64146 Modified Files: ChangeLog clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out gdk/gdk.h gdk/gdk_align.c gdk/gdk_bat.c gdk/gdk_bbp.c gdk/gdk_bbp.h gdk/gdk_calc.c gdk/gdk_group.c gdk/gdk_hash.c gdk/gdk_heap.c gdk/gdk_imprints.c gdk/gdk_join.c gdk/gdk_logger.c gdk/gdk_logger_old.c gdk/gdk_orderidx.c gdk/gdk_private.h gdk/gdk_storage.c gdk/gdk_tm.c geom/monetdb5/geom.c monetdb5/mal/mal_authorize.c monetdb5/mal/mal_profiler.c monetdb5/modules/kernel/bat5.c monetdb5/modules/kernel/batstr.c monetdb5/modules/mal/pcre.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_gencode.c sql/backends/monet5/sql_result.c sql/backends/monet5/sql_scenario.c sql/backends/monet5/sql_statement.c sql/include/sql_catalog.h sql/include/sql_relation.h sql/server/rel_optimizer.c sql/storage/bat/bat_storage.c sql/test/BugTracker-2014/Tests/manifold.Bug-3556.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-0join-view.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-query.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-view.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-view.stable.out sql/test/miscellaneous/Tests/groupby_error.stable.out tools/monetdbe/monetdbe.c Branch: unlock Log Message:
Merge with default branch. diffs (truncated from 11918 to 300 lines): diff --git a/ChangeLog.Oct2020 b/ChangeLog.Oct2020 --- a/ChangeLog.Oct2020 +++ b/ChangeLog.Oct2020 @@ -1,6 +1,22 @@ # ChangeLog file for devel # This file is updated with Maddlog +* Mon Aug 10 2020 Ying Zhang <y.zh...@cwi.nl> +- Finished a first version of the new monitoring function + user_statistics(), which is only intended for the DBAs. + For each database user who has logged in during the current mserver5 + session, it returns + "username": login name of the database user, + "querycount": the number of queries this user has executed since his/her + first login, + "totalticks": the total execution time (in microsecond) of the queries ran + by this user, + "maxquery": the query with the longest execution time (if two queries have + the same execution time, the newer overwrites the older), + "maxticks": the execution time of the 'maxquery' (in microsecond), + "started": the start timestamp of the 'maxquery', + "finished": the finish timestamp of the 'maxquery'. + * Wed Jun 10 2020 Sjoerd Mullender <sjo...@acm.org> - Removed support for LiDAR data, that is the SQL procedures sys.lidarattach, sys.lidarload, and sys.lidarexport. diff --git a/ChangeLog.userstats b/ChangeLog.userstats deleted file mode 100644 --- a/ChangeLog.userstats +++ /dev/null @@ -1,19 +0,0 @@ -# ChangeLog file for userstats -# This file is updated with Maddlog - -* Mon Aug 10 2020 Ying Zhang <y.zh...@cwi.nl> -- Finished a first version of the new monitoring function - user_statistics(), which is only intended for the DBAs. - For each database user who has logged in during the current mserver5 - session, it returns - "username": login name of the database user, - "querycount": the number of queries this user has executed since his/her - first login, - "totalticks": the total execution time (in microsecond) of the queries ran - by this user, - "maxquery": the query with the longest execution time (if two queries have - the same execution time, the newer overwrites the older), - "maxticks": the execution time of the 'maxquery' (in microsecond), - "started": the start timestamp of the 'maxquery', - "finished": the finish timestamp of the 'maxquery'. - diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -116,9 +116,14 @@ BuildRequires: gcc BuildRequires: bison BuildRequires: /usr/bin/python3 %if %{?rhel:1}%{!?rhel:0} +# RH 7 (and for readline also 8) BuildRequires: bzip2-devel +BuildRequires: unixODBC-devel +BuildRequires: readline-devel %else BuildRequires: pkgconfig(bzip2) +BuildRequires: pkgconfig(odbc) +BuildRequires: pkgconfig(readline) %endif %if %{with fits} BuildRequires: pkgconfig(cfitsio) @@ -128,23 +133,19 @@ BuildRequires: geos-devel >= 3.4.0 %endif BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(liblzma) -# BuildRequires: libmicrohttpd-devel -BuildRequires: libuuid-devel +BuildRequires: pkgconfig(uuid) BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(openssl) %if %{with pcre} BuildRequires: pkgconfig(libpcre) >= 4.5 %endif -BuildRequires: readline-devel -BuildRequires: unixODBC-devel -# BuildRequires: uriparser-devel BuildRequires: pkgconfig(zlib) %if %{with py3integration} -BuildRequires: python3-devel >= 3.5 +BuildRequires: pkgconfig(python3) >= 3.5 BuildRequires: python3-numpy %endif %if %{with rintegration} -BuildRequires: R-core-devel +BuildRequires: pkgconfig(libR) %endif %if (0%{?fedora} >= 22) @@ -762,6 +763,11 @@ fi %setup -q %build +%if (0%{?fedora} >= 33) +# on Fedora 33 we get a crash of the compiler when using -flto, so disable it +CFLAGS="${CFLAGS:-%optflags} -fno-lto" +export CFLAGS +%endif %cmake3 \ -DRELEASE_VERSION=ON \ -DASSERT=OFF \ diff --git a/README.rst b/README.rst --- a/README.rst +++ b/README.rst @@ -1,15 +1,32 @@ The MonetDB Database System =========================== -The MonetDB database is developed by the CWI database research group -(see https://www.monetdb.org/). +The MonetDB database was originally developed by the `CWI`__ `database +research group`__ (see https://www.monetdb.org/). Development has now +shifted to the spin-off company `MonetDB Solutions`__. -Via the MonetDB project we have brought the MonetDB system in open source, -where it is accessible at https://www.monetdb.org/Downloads/ +Via the MonetDB project we have brought the MonetDB system in open +source, where it is accessible at https://www.monetdb.org/Downloads/. +Even though development happens mostly in a company, the MonetDB +database system will remain open source. It is available under the +`Mozilla Public License 2.0`__. The MonetDB database system is a high-performance database kernel for -query-intensive applications. The MonetDB source can be found at our `Mercurial -server`__. There is also a `github mirror`__ that is updated once a day. +query-intensive applications. The MonetDB source can be found at our +`Mercurial server`__. There is also a `github mirror`__ that is updated +once an hour. + +.. _CWI: https://www.cwi.nl/ +__ CWI_ + +.. _DA: https://www.cwi.nl/research/groups/database-architectures +__ DA_ + +.. _solutions: https://www.monetdbsolutions.com +__ solutions_ + +.. _mpl: http://mozilla.org/MPL/2.0/ +__ mpl_ .. _MonetDB: https://dev.monetdb.org/hg/MonetDB/ __ MonetDB_ @@ -17,12 +34,107 @@ server`__. There is also a `github mirro .. _github: https://github.com/MonetDB/MonetDB __ github_ -If you got a source distribution, please compile and install MonetDB first, -following the instructions in the file `HowToStart.rst`__ (for Unix) -or `buildtools/doc/windowsbuild.rst`__ (for Windows). +Building +-------- + +MonetDB is built using the ``cmake`` program. It is recommended to +build in a directory that is not inside the source tree. In order to +build, use the following commands when inside your build directory:: + + cmake [options] /path/to/monetdb/source + cmake --build . + cmake --build . --target install + +In order to install into a different directory than the default +``/usr/local``, add the option ``-DCMAKE_INSTALL_PREFIX``:: + + cmake -DCMAKE_INSTALL_PREFIX=/path/to/install/monetdb /path/to/monetdb/source + cmake --build . + cmake --build . --target install + +Build Options +............. + +There are many options that can be used to select how MonetDB is to be +built. Options can be turned ``ON`` or ``OFF`` using a ``-D`` flag on +the first of the ``cmake`` command lines. Except when specified +otherwise, options are ``ON`` when the relevant libraries can be found. +Available options are: -__ HowToStart.rst -__ buildtools/doc/windowsbuild.rst +============== =============================================================================================== +Option Explanation +============== =============================================================================================== +ASSERT Enable asserts (default=ON for development sources, OFF for tarball installation) +CINTEGRATION Enable support for C UDFs (default=ON except on Windows) +CMAKE_SUMMARY Show a summary of the cmake configuration (for debug purposes, default=OFF) +CMAKE_UNITTEST Build and run the unittest for the build system (default=OFF) +FITS Enable support for FITS +GEOM Enable support for geom module +INT128 Enable support for 128-bit integers +NETCDF Enable support for netcdf +ODBC Compile the MonetDB ODBC driver +PY3INTEGRATION Enable support for Python 3 integration into MonetDB +RINTEGRATION Enable support for R integration into MonetDB +SANITIZER Enable support for the GCC address sanitizer (default=OFF) +SHP Enable support for ESRI Shapefiles +STRICT Enable strict compiler flags (default=ON for development sources, OFF for tarball installation) +TESTING Enable support for testing +WITH_BZ2 Include bz2 support +WITH_CMOCKA Include cmocka support (default=OFF) +WITH_CRYPTO Only in very some special cases we build without crypto dependencies +WITH_CURL Include curl support +WITH_LZMA Include lzma support +WITH_PCRE Include pcre support +WITH_PROJ Include proj support +WITH_READLINE Include readline support +WITH_UUID Include uuid support +WITH_VALGRIND Include valgrind support +WITH_XML2 Include xml2 support +WITH_ZLIB Include zlib support +============== =============================================================================================== + +Required packages +................. + +On Fedora, the following packages are required: +``bison``, ``cmake``, ``gcc``, ``openssl-devel``, ``pkgconf``, +``python3``. + +The following packages are optional but recommended: +``bzip2-devel``, ``libuuid-devel``, ``pcre-devel``, ``readline-devel``, +``xz-devel``, ``zlib-devel``. + +The following packages are optional: +``cfitsio-devel``, ``gdal-devel``, ``geos-devel``, ``libasan``, +``libcurl-devel``, ``libxml2-devel``, ``netcdf-devel``, ``proj-devel``, +``python3-devel``, ``python3-numpy``, ``R-core-devel``, +``unixODBC-devel``, ``valgrind-devel``. + +On Ubuntu and Debian the following packages are required: +``bison``, ``cmake``, ``gcc``, ``libssl-dev``, ``pkg-config``, +``python3``. + +The following packages are optional but recommended: +``libbz2-dev``, ``uuid-dev``, ``libpcre3-dev``, ``libreadline-dev``, +``liblzma-dev``, ``zlib1g-dev``. + +The following packages are optional: +``libasan5``, ``libcfitsio-dev``, ``libcurl4-gnutls-dev``, +``libgdal-dev``, ``libgeos-dev``, ``libnetcdf-dev``, ``libproj-dev``, +``libxml2-dev``, ``python3-dev``, ``python3-numpy``, ``r-base-dev``, +``unixodbc-dev``, ``valgrind``. + +``cmake`` must be at least version 3.12, ``python`` must be at least +version 3.5. + +Bugs +---- + +We of course hope there aren't any, but if you do find one, you can +report bugs in our `bugzilla`__ instance. + +.. _bugzilla: https://bugs.monetdb.org +__ bugzilla_ Copyright Notice ================ diff --git a/buildtools/conf/CMakeLists.txt b/buildtools/conf/CMakeLists.txt --- a/buildtools/conf/CMakeLists.txt +++ b/buildtools/conf/CMakeLists.txt @@ -16,4 +16,11 @@ if(WIN32) COMPONENT server) endif() +if(DEVELOPMENT AND NOT WIN32) + install(FILES + Maddlog + PERMISSIONS ${PROGRAM_PERMISSIONS_DEFAULT} + DESTINATION ${CMAKE_INSTALL_BINDIR}) +endif() + # vim: set ts=2:sw=2:et diff --git a/clients/Tests/MAL-signatures.stable.out b/clients/Tests/MAL-signatures.stable.out --- a/clients/Tests/MAL-signatures.stable.out +++ b/clients/Tests/MAL-signatures.stable.out @@ -66,9 +66,9 @@ stdout of test 'MAL-signatures` in direc % clob, clob, clob, clob, clob # type % 12, 28, 313, 42, 0 # length [ "aggr", "all", "command aggr.all(X_1:bat[:any_1]):any_1 ", "SQLall;", "" ] -[ "aggr", "allnotequal", "command aggr.allnotequal(X_1:bat[:any_1], X_2:bat[:any_1]):bit ", "SQLallnotequal;", "" ] +[ "aggr", "allnotequal", "pattern aggr.allnotequal(X_1:bat[:any_1], X_2:bat[:any_1]):bit ", "SQLallnotequal;", "" ] [ "aggr", "anyequal", "pattern aggr.anyequal(X_1:any_1, X_2:any_1):bit ", "CMDvarEQ;", "" ] -[ "aggr", "anyequal", "command aggr.anyequal(X_1:bat[:any_1], X_2:bat[:any_1]):bit ", "SQLanyequal;", "" ] +[ "aggr", "anyequal", "pattern aggr.anyequal(X_1:bat[:any_1], X_2:bat[:any_1]):bit ", "SQLanyequal;", "" ] [ "aggr", "avg", "command aggr.avg(X_1:bat[:bte], X_2:bat[:oid], X_3:bat[:any_1]):bat[:dbl] ", "AGGRavg13_dbl;", "" ] [ "aggr", "avg", "command aggr.avg(X_1:bat[:dbl], X_2:bat[:oid], X_3:bat[:any_1]):bat[:dbl] ", "AGGRavg13_dbl;", "" ] [ "aggr", "avg", "command aggr.avg(X_1:bat[:flt], X_2:bat[:oid], X_3:bat[:any_1]):bat[:dbl] ", "AGGRavg13_dbl;", "" ] @@ -795,6 +795,8 @@ stdout of test 'MAL-signatures` in direc [ "bat", "setPersistent", "command bat.setPersistent(X_1:bat[:any_1]):void ", "BKCsetPersistent;", "" ] [ "bat", "setTransient", "command bat.setTransient(X_1:bat[:any_1]):void ", "BKCsetTransient;", "" ] [ "bat", "single", "pattern bat.single(X_1:any_1):bat[:any_1] ", "CMDBATsingle;", "" ] +[ "bataggr", "allnotequal", "pattern bataggr.allnotequal(X_1:bat[:any_1], X_2:bat[:any_1]):bit ", "SQLallnotequal;", "" ] +[ "bataggr", "anyequal", "pattern bataggr.anyequal(X_1:bat[:any_1], X_2:bat[:any_1]):bat[:bit] ", "SQLanyequal;", "" ] [ "bataggr", "exist", "pattern bataggr.exist(X_1:any_1):bat[:bit] ", "SQLexist;", "" ] [ "bataggr", "exist", "pattern bataggr.exist(X_1:bat[:any_1]):bat[:bit] ", "SQLexist;", "" ] _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list