Changeset: 544bf46b1d05 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=544bf46b1d05 Added Files: sql/test/BugTracker-2014/Tests/crash_on_groupby_distinct_serial.Bug-3463.sql sql/test/BugTracker-2014/Tests/crash_on_groupby_distinct_serial.Bug-3463.stable.err sql/test/BugTracker-2014/Tests/crash_on_groupby_distinct_serial.Bug-3463.stable.out sql/test/BugTracker-2014/Tests/crash_on_or_with_in.Bug-3461.sql sql/test/BugTracker-2014/Tests/crash_on_or_with_in.Bug-3461.stable.err sql/test/BugTracker-2014/Tests/crash_on_or_with_in.Bug-3461.stable.out sql/test/BugTracker-2014/Tests/in_incorrect_multi.Bug-3462.sql sql/test/BugTracker-2014/Tests/in_incorrect_multi.Bug-3462.stable.err sql/test/BugTracker-2014/Tests/in_incorrect_multi.Bug-3462.stable.out sql/test/BugTracker-2014/Tests/local-temp-1.Bug-3468.sql sql/test/BugTracker-2014/Tests/local-temp-1.Bug-3468.stable.err sql/test/BugTracker-2014/Tests/local-temp-1.Bug-3468.stable.out sql/test/BugTracker-2014/Tests/local-temp-2.Bug-3468.sql sql/test/BugTracker-2014/Tests/local-temp-2.Bug-3468.stable.err sql/test/BugTracker-2014/Tests/local-temp-2.Bug-3468.stable.out sql/test/BugTracker-2014/Tests/select-having.Bug-3458.sql sql/test/BugTracker-2014/Tests/select-having.Bug-3458.stable.err sql/test/BugTracker-2014/Tests/select-having.Bug-3458.stable.out sql/test/BugTracker-2014/Tests/setreadonly_forgets_changes.Bug-3446.sql sql/test/BugTracker-2014/Tests/setreadonly_forgets_changes.Bug-3446.stable.err sql/test/BugTracker-2014/Tests/setreadonly_forgets_changes.Bug-3446.stable.out Modified Files: .hgtags HowToStart.rst MonetDB.spec NT/installer32/MonetDB-ODBC-Installer.vdproj NT/installer32/MonetDB5-Geom-Module.vdproj NT/installer32/MonetDB5-SQL-Installer.vdproj NT/installer32/cv64-32.sh NT/installer64/MonetDB-ODBC-Installer.vdproj NT/installer64/MonetDB5-Geom-Module.vdproj NT/installer64/MonetDB5-SQL-Installer.vdproj NT/installer64/cv32-64.sh NT/monetdb_config.h.in NT/rules.msc bootstrap buildtools/ChangeLog.Jan2014 buildtools/doc/windowsbuild.rst clients/ChangeLog.Jan2014 clients/Tests/exports.stable.out clients/examples/C/smack01.c clients/mapiclient/dump.c clients/mapiclient/mclient.c clients/mapiclient/msqldump.c clients/mapiclient/tomograph.c clients/mapilib/mapi.rc clients/odbc/driver/ODBCUtil.c clients/odbc/driver/SQLColAttribute.c clients/odbc/driver/SQLDriverConnect.c clients/odbc/driver/SQLTables.c clients/odbc/driver/driver.rc clients/odbc/winsetup/setup.rc clients/python2/setup.py clients/python3/setup.py common/stream/stream.c configure.ag debian/changelog debian/rules gdk/gdk.h gdk/gdk_heap.c gdk/gdk_imprints.c gdk/gdk_posix.h gdk/gdk_private.h gdk/gdk_search.c gdk/gdk_storage.c gdk/gdk_system.c gdk/gdk_system.h gdk/gdk_utils.c gdk/libbat.rc libversions monetdb5/extras/rdf/rdf_shredder.c monetdb5/extras/sphinx/sphinx.c monetdb5/mal/mal_box.c monetdb5/mal/mal_builder.c monetdb5/mal/mal_debugger.c monetdb5/mal/mal_function.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_namespace.c monetdb5/mal/mal_private.h monetdb5/mal/mal_profiler.c monetdb5/mal/mal_profiler.h monetdb5/mal/mal_readline.c monetdb5/mal/mal_recycle.c monetdb5/mal/mal_resolve.c monetdb5/mal/mal_runtime.c monetdb5/modules/atoms/inet.c monetdb5/modules/atoms/url.c monetdb5/modules/kernel/aggr.c monetdb5/modules/kernel/bat5.c monetdb5/modules/mal/Tests/remote12.mal monetdb5/modules/mal/bbp.c monetdb5/modules/mal/groupby.c monetdb5/modules/mal/mal_io.c monetdb5/modules/mal/mal_mapi.c monetdb5/modules/mal/pcre.c monetdb5/modules/mal/profiler.c monetdb5/modules/mal/remote.c monetdb5/modules/mal/sysmon.c monetdb5/optimizer/opt_cluster.c monetdb5/optimizer/opt_dataflow.c monetdb5/optimizer/opt_macro.c monetdb5/optimizer/opt_mergetable.c monetdb5/optimizer/opt_multiplex.c monetdb5/optimizer/opt_remap.c monetdb5/optimizer/opt_remoteQueries.c monetdb5/optimizer/opt_support.c monetdb5/tools/libmonetdb5.rc sql/backends/monet5/datacell/50_datacell.sql sql/backends/monet5/datacell/Tests/datacell00.stable.err sql/backends/monet5/datacell/Tests/datacell00.stable.out sql/backends/monet5/datacell/Tests/dctemper00.stable.err sql/backends/monet5/datacell/Tests/dctemper00.stable.out sql/backends/monet5/datacell/Tests/scenario01.stable.out sql/backends/monet5/datacell/Tests/scenario02.stable.out sql/backends/monet5/datacell/Tests/scenario04.stable.out sql/backends/monet5/datacell/Tests/scenario05.stable.out sql/backends/monet5/datacell/Tests/scenario06.stable.err sql/backends/monet5/datacell/Tests/scenario06.stable.out sql/backends/monet5/datacell/datacell.c sql/backends/monet5/datacell/datacell.h sql/backends/monet5/datacell/datacell.mal sql/backends/monet5/datacell/dcsocket.c sql/backends/monet5/datacell/emitter.c sql/backends/monet5/datacell/petrinet.c sql/backends/monet5/datacell/receptor.c sql/backends/monet5/datacell/sensor.c sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql_cast.c sql/backends/monet5/sql_gencode.c sql/backends/monet5/sql_optimizer.c sql/backends/monet5/sql_scenario.c sql/backends/monet5/sql_statistics.c sql/backends/monet5/vaults/fits.c sql/benchmarks/tpch/Tests/01-explain.stable.out.32bit sql/common/sql_changeset.c sql/common/sql_hash.c sql/common/sql_list.c sql/common/sql_string.c sql/common/sql_types.c sql/rel.txt sql/server/rel_exp.c sql/server/rel_exp.h sql/server/rel_optimizer.c sql/server/rel_planner.c sql/server/rel_psm.c sql/server/rel_schema.c sql/server/rel_select.c sql/server/rel_updates.c sql/server/sql_privileges.c sql/storage/bat/bat_storage.c sql/storage/bat/bat_table.c sql/storage/restrict/restrict_table.c sql/storage/sql_catalog.c sql/storage/sql_storage.h sql/storage/store.c sql/storage/store_sequence.c sql/test/BugTracker-2014/Tests/All sql/test/Users/Tests/schema.stable.err testing/Mtimeout.c testing/difflib.c testing/helpers.h testing/listexports.py.in tools/merovingian/client/monetdb.c tools/merovingian/daemon/argvcmds.c tools/merovingian/daemon/client.c tools/merovingian/daemon/controlrunner.c tools/merovingian/daemon/discoveryrunner.c tools/merovingian/daemon/merovingian.c tools/merovingian/daemon/multiplex-funnel.c tools/merovingian/daemon/peering.c tools/mserver/mserver5.c vertoo.data Branch: int128 Log Message:
Merge with Jan2014 branch. diffs (truncated from 9162 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -560,3 +560,6 @@ fb702cba0210295b29825b095ed87d92b6645434 14baa1e3a827c26932ec5d853feca28eacd70009 Jan2014_release 28bad4f9c07415a7f784ac6af2494b0333c866a6 Jan2014_11 fa6872e2a8cf8bb3b4fb25a3b356946316f52a6b Jan2014_SP1_release +45d2af6f6cca3478319a11b5ddae69ecd9f19943 Jan2014_13 +fa6872e2a8cf8bb3b4fb25a3b356946316f52a6b Jan2014_SP1_release +242fe4b4960f54c339f7a6fb79aedd8f3b5e217a Jan2014_SP1_release diff --git a/HowToStart.rst b/HowToStart.rst --- a/HowToStart.rst +++ b/HowToStart.rst @@ -95,13 +95,22 @@ iconv On Ubuntu, you can search with `apt-file` what provides these files: - $ apt-file search iconv.m4 + ``$ apt-file search iconv.m4`` gettext: /usr/share/aclocal/iconv.m4 gnulib: /usr/share/gnulib/m4/iconv.m4 The .m4 that usually works is in gettext. Simply run, - $ sudo apt-get install gettext + ``$ sudo apt-get install gettext`` + + On Fedora, you can search with `yum`: + + ``$ yum provides /usr/share/aclocal/iconv.m4`` + + This shows the file is provided by the gettext-devel package. + Run + + ``$ sudo yum install gettext-devel`` standard software development tools To compile MonetDB, you also need to have the following @@ -109,16 +118,15 @@ standard software development tools use on you system: - a C compiler (e.g. GNU's ``gcc``); - - GNU ``make`` (``gmake``) (native ``make`` on, e.g., IRIX and Solaris - usually don't work). - - The following are not needed when you start with the source - distribution: - - - a C++ compiler (e.g. GNU's ``g++``); + - GNU ``make`` (``gmake``) (native ``make`` on, e.g., IRIX and + Solaris usually don't work); - a lexical analyzer generator (e.g., ``lex`` or ``flex``); - a parser generator (e.g., ``yacc`` or ``bison``). + If ``lex`` and ``flex`` are missing, you won't be able to + build the jaql front end. If ``yacc`` and ``bison`` are + missing, you won't be able to build the SQL front end. + The following are optional. They are checked for during configuration and if they are missing, the feature is just missing: @@ -127,21 +135,22 @@ standard software development tools - php libxml2 - The XML parsing library `libxml2`__ is used by - the xml module of monetdb5. + The XML parsing library `libxml2`__ is used by the xml module + of monetdb5. - MonetDB5 cannot be compiled without libxml2. Current Linux - distributions all come with libxml2. + MonetDB5 cannot be compiled without libxml2. Current Linux + distributions all come with libxml2. pcre - The Perl Compatible Regular Expressions library `pcre`__ is used by - monetdb5 and sql. Most prominently, complex SQL LIKE expressions are - evaluated with help of the pcre library. + The Perl Compatible Regular Expressions library `pcre`__ is + used by monetdb5 and sql. Most prominently, complex SQL LIKE + expressions are evaluated with help of the pcre library. openssl - The `OpenSSL`__ toolkit implementing SSL v2/v3 and TLS protocols is used - for its with full-strength world-wide cryptography functions. The - client-server login procedures make use of these functions. + The `OpenSSL`__ toolkit implementing SSL v2/v3 and TLS + protocols is used for its with full-strength world-wide + cryptography functions. The client-server login procedures + make use of these functions. __ http://dev.monetdb.org/downloads/sources/ __ http://www.gnu.org/software/autoconf/ @@ -194,7 +203,7 @@ development sources on your computer. hg clone http://dev.monetdb.org/hg/MonetDB This will create the directory MonetDB in your current working directory -with underneath all subcomponents. +with underneath all subcomponents. Bootstrap, Configure and Make @@ -227,7 +236,9 @@ where ``...`` is replaced with the (abso The directory where you execute ``configure`` is the place where all intermediate source and object files are generated during compilation -via ``make``. +via ``make``. It is useful to have this be a new directory so that +there is an easy way to remove all intermediates in case you want to +rebuild (just empty or remove the directory). By default, MonetDB is installed in ``/usr/local``. To choose another target directory, you need to call @@ -238,10 +249,18 @@ target directory, you need to call Some other useful ``configure`` options are: ---enable-debug enable full debugging default=[see `Configure defaults and recommendations`_ below] ---enable-optimize enable extra optimization default=[see `Configure defaults and recommendations`_ below] ---enable-assert enable assertions in the code default=[see `Configure defaults and recommendations`_ below] ---enable-strict enable strict compiler flags default=[see `Configure defaults and recommendations`_ below] +--enable-debug enable full debugging + default=[see `Configure defaults and + recommendations`_ below] +--enable-optimize enable extra optimization + default=[see `Configure defaults and + recommendations`_ below] +--enable-assert enable assertions in the code + default=[see `Configure defaults and + recommendations`_ below] +--enable-strict enable strict compiler flags + default=[see `Configure defaults and + recommendations`_ below] You can also add options such as ``CC=<compiler>`` to specify the compiler and compiler flags to use. @@ -251,35 +270,21 @@ Use ``configure --help`` to find out mor Configure defaults and recommendations ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -For convenience of both developers and users as well as to comply even more -with open source standards, we now set/use the following defaults for the -configure options +For convenience of both developers and users, we use the following +defaults for the configure options. -:: +When compiling from Mercurial sources (as mainly done by developers):: - --enable-strict, --enable-assert, --enable-debug, --enable-optimize + --enable-strict --enable-assert --enable-debug --disable-optimize -When compiling from Mercurial sources -(as mainly done by developers): +When compiling from the pre-packages source distribution:: -:: + --disable-strict --disable-assert --disable-debug --disable-optimize - strict=yes assert=yes debug=yes optimize=no (*) +When building a binary distribution, we use:: -When compiling from packaged/distributed sources (i.e., tarballs) -(as mainly done by users): + --disable-strict --disable-assert --disable-debug --enable-optimize -:: - - strict=no assert=no debug=no optimize=no (*) - -For building binary distributions (RPMs): - -:: - - strict=no assert=no debug=no optimize=yes - -``(*)`` IMPORTANT NOTE: Since ``--enable-optimize=yes`` is not the default for any case except @@ -290,7 +295,7 @@ scratch, *explicitly configured* with --enable-debug=no --enable-assert=no --enable-optimize=yes -in case you want/need to run any performance experiments with MonetDB! +in case you want to run any performance experiments with MonetDB! Please note: ``--enable-X=yes`` is equivalent to ``--enable-X``, and @@ -307,24 +312,7 @@ command make to compile the source code. Please note that parallel make -runs (e.g. ``make -j2``) are currently known to be unsuccessful. - -Testing the Build -~~~~~~~~~~~~~~~~~ - -This step is optional and only relevant for the packages clients, -MonetDB5 and sql. - -If ``make`` went successfully, you can try - -:: - - make check - -This will perform a large number of tests, some are unfortunately -still expected to fail, but most should go successfully. At the end -of the output there is a reference to an HTML file which is created by -the test process that shows the test results. +runs (e.g. ``make -j2``) are fully supported. Install ~~~~~~~ @@ -343,8 +331,7 @@ privileges. Testing the Installation ~~~~~~~~~~~~~~~~~~~~~~~~ -This step is optional and only relevant for the packages clients, -MonetDB5 and sql. +This step is optional. Make sure that *prefix*/bin is in your ``PATH``. Then in the package top-level directory issue the command @@ -363,13 +350,10 @@ using a Mercurial checkout; see for more options). -This should produce much the same output as ``make check`` above, but -uses the installed version of MonetDB. - You need write permissions in part of the installation directory for this command: it will create subdirectories ``var/dbfarm`` and -``Tests``. - +``Tests``, although there are options to ``Mtest.py`` to change the +paths. Usage ----- @@ -402,8 +386,7 @@ for details. At the ``mclient`` prompt some extra commands are available. Type a single question mark to get a list of options. Note that one of the -options is to read input from a file using ``<``. - +options is to read input from a file using ``\<``. Troubleshooting --------------- diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -1,5 +1,5 @@ %define name MonetDB -%define version 11.17.12 +%define version 11.17.14 %{!?buildno: %define buildno %(date +%Y%m%d)} # groups of related archs @@ -18,6 +18,24 @@ %define release %{buildno}%{?dist}%{?oidsuf} +# On Fedora, the geos library is available, and so we can require it +# and build the geom modules. On RedHat Enterprise Linux and +# derivatives (CentOS, Scientific Linux), the geos library is not +# available. However, the geos library is available in the Extra +# Packages for Enterprise Linux (EPEL). If the _with_epel macro is +# set, we assume that EPEL is available, and so we enable building the +# geom modules. The _with_epel macro can be set when using mock by +# passing it the flag --with epel. +%if %{?rhel:1}%{!?rhel:0} +%if %{?_with_epel:1}%{!?_with_epel:0} +# RedHat Enterprise Linux and derivatives with EPEL enabled +%define with_geos 1 +%endif +%else +# Fedora +%define with_geos 1 +%endif + Name: %{name} Version: %{version} Release: %{release} @@ -33,8 +51,7 @@ BuildRequires: bison BuildRequires: bzip2-devel # BuildRequires: cfitsio-devel BuildRequires: flex -%if %{?rhel:0}%{!?rhel:1} -# no geos library on RedHat Enterprise Linux and derivatives +%if %{?with_geos:1}%{!?with_geos:0} BuildRequires: geos-devel >= 2.2.0 %endif BuildRequires: gsl-devel @@ -50,21 +67,23 @@ BuildRequires: python3-devel %endif # BuildRequires: raptor-devel >= 1.4.16 _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list