Changeset: 997f91f8093f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=997f91f8093f
Modified Files:
        NT/rules.msc
        buildtools/doc/windowsbuild.rst
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures.stable.out.int128
        clients/Tests/exports.stable.out
        debian/monetdb5-server.install
        gdk/ChangeLog
        gdk/gdk.h
        gdk/gdk_align.c
        gdk/gdk_bat.c
        gdk/gdk_batop.c
        monetdb5/ChangeLog
        monetdb5/modules/kernel/bat5.c
        monetdb5/modules/kernel/bat5.h
        monetdb5/modules/kernel/bat5.mal
        monetdb5/modules/mal/Tests/inspect05.malC
        monetdb5/modules/mal/Tests/inspect05.stable.out
        monetdb5/modules/mal/Tests/inspect05.stable.out.int128
        sql/backends/monet5/sql_statement.c
        sql/include/sql_relation.h
        sql/server/rel_exp.c
        sql/server/rel_exp.h
        sql/server/rel_optimizer.c
        sql/server/rel_rel.c
        sql/server/rel_select.c
        sql/server/rel_unnest.c
        sql/server/rel_unnest.h
        sql/server/sql_atom.c
        sql/server/sql_atom.h
        sql/storage/bat/bat_storage.c
        sql/storage/bat/bat_table.c
        
sql/test/BugTracker-2013/Tests/cannot_use_columns_after_groupby.Bug-3340.sql
        
sql/test/BugTracker-2013/Tests/cannot_use_columns_after_groupby.Bug-3340.stable.err
        
sql/test/BugTracker-2013/Tests/cannot_use_columns_after_groupby.Bug-3340.stable.out
        sql/test/BugTracker-2017/Tests/groupby_assertion.Bug-6338.stable.err
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.err
        sql/test/mergetables/Tests/sqlsmith-exists.sql
        sql/test/mergetables/Tests/sqlsmith-exists.stable.out
        sql/test/scanner/Tests/raw_strings.stable.err
        sql/test/scanner/Tests/raw_strings.stable.out
        sql/test/subquery/Tests/subquery.sql
        sql/test/subquery/Tests/subquery.stable.err
        sql/test/subquery/Tests/subquery.stable.out
        sql/test/subquery/Tests/subquery3.sql
        sql/test/subquery/Tests/subquery3.stable.err
        sql/test/subquery/Tests/subquery3.stable.out
Branch: gdk_tracer
Log Message:

Merge with default


diffs (truncated from 2672 to 300 lines):

diff --git a/NT/rules.msc b/NT/rules.msc
--- a/NT/rules.msc
+++ b/NT/rules.msc
@@ -139,14 +139,19 @@ bzip2_CFLAGS = -DHAVE_LIBBZ2 "-I$(LIBBZI
 !IFNDEF LIBXML2
 LIBXML2 = C:\libxml2-2.6.30.win$(bits)
 !ENDIF
-libxml2_CFLAGS = -DHAVE_LIBXML "-I$(LIBXML2)\include" $(zlib_CFLAGS) 
$(ICONV_CFLAGS)
+# by default libxml2 include files get installed in ...\include\libxml2\libxml
+# but this has sometimes been moved to ...\include\libxml
+libxml2_CFLAGS = -DHAVE_LIBXML "-I$(LIBXML2)\include\libxml2" 
"-I$(LIBXML2)\include" $(zlib_CFLAGS) $(ICONV_CFLAGS)
 libxml2_LIBS = "$(LIBXML2)\lib\libxml2.lib" $(zlib_LIBS) $(ICONV_LIBS)
 !ENDIF
 
 !IFNDEF LIBGEOS
 LIBGEOS = C:\geos-3.0.win$(bits)
 !ENDIF
-GEOS_LIBS = $(LIBGEOS)\lib\geos_c_i.lib
+!IFNDEF GEOSFILE
+GEOSFILE = geos_c
+!ENDIF
+GEOS_LIBS = $(LIBGEOS)\lib\$(GEOSFILE).lib
 GEOS_INCS = -I$(LIBGEOS)\include
 
 !IFDEF HAVE_LIBR
diff --git a/buildtools/doc/windowsbuild.rst b/buildtools/doc/windowsbuild.rst
--- a/buildtools/doc/windowsbuild.rst
+++ b/buildtools/doc/windowsbuild.rst
@@ -243,6 +243,8 @@ PCRE (Perl Compatible Regular Expression
 The PCRE__ library is used to extend the string matching capabilities
 of MonetDB.  The PCRE library is required for the monetdb5 component.
 
+.. _pcre_cmake:
+
 Download the source from http://www.pcre.org/.  In order to build the
 library, you will need a program called ``cmake`` which you can
 download from http://www.cmake.org/ or by using Chocolatey_.  Follow
@@ -255,14 +257,14 @@ Configure button.  This pops up a dialog
 chose Visual Studio 14 2015.
 
 You need to configure some PCRE build options.  I chose to do build
-shared libs, to match newlines with the ``ANYCRLF`` option, and to do
-have UTF-8 support and support for Unicode properties.  When you're
-satisfied with the options, click on Generate.  Then in the build
-folder you've chosen, open the PCRE.sln file with Visual Studio, and
-build and install.  Make sure you set the Solution Configuration to
-Release if you want to build a releasable version of the MonetDB
-suite.  By default the library will be installed in ``C:\Program
-Files\PCRE``.
+shared libs, to match newlines with the ``ANYCRLF`` and
+``PCRE_SUPPORT_JIT`` options, and to do have UTF-8 support and support
+for Unicode properties.  When you're satisfied with the options, click
+on Generate.  Then in the build folder you've chosen, open the
+PCRE.sln file with Visual Studio, and build and install.  Make sure
+you set the Solution Configuration to Release if you want to build a
+releasable version of the MonetDB suite.  By default the library will
+be installed in ``C:\Program Files\PCRE``.
 
 For Windows64, select the correct compiler (``Visual Studio 14 2015
 Win64``) and proceed normally.  When building the 32 bit version on
@@ -304,15 +306,15 @@ required for the clients component when 
 server.
 
 Download the source from http://www.openssl.org/.  We used the latest
-stable version (1.1.0g).  Follow the instructions in the file
+stable version (1.1.1d).  Follow the instructions in the file
 ``NOTES.WIN``.
 
 .. The actual commands used were::
-   perl Configure VC-WIN32 no-asm --prefix=C:\Libraries\openssl-1.1.0g.win32
+   perl Configure VC-WIN32 no-asm --prefix=C:\Libraries\openssl-1.1.1d.win32 
--openssldir=SSL
    nmake
    nmake install
    and::
-   perl Configure VC-WIN64A no-asm --prefix=C:\Libraries\openssl-1.1.0g.win64
+   perl Configure VC-WIN64A no-asm --prefix=C:\Libraries\openssl-1.1.1d.win64 
--openssldir=SSL
    nmake
    nmake install
 
@@ -346,7 +348,7 @@ the correct locations for the iconv and 
  nmake /f Makefile.msvc install
 
 We needed to edit the file ``win32\Makefile.msvc`` and change
-``iconv.lib`` to ``iconv.dll.lib``.
+``iconv.lib`` to ``iconv.dll.lib`` and ``zlib.lib`` to ``zdll.lib``.
 
 __ http://xmlsoft.org/
 
@@ -361,39 +363,22 @@ so to get the software, you will have to
 yourself.
 
 Get the source tar ball from http://trac.osgeo.org/geos/#Download and
-extract somewhere.  You can follow the instructions in e.g. `Building
-on Windows with NMake`__.
-
-We needed to make a few changes to the file ``nmake.opt``.  We needed
-to add a blurb for the version of ``nmake`` that we were using.  Look
-at the version number of ``nmake /P`` and adapt the closest match.
-
-For newer versions of Visual Studio, we also needed to add a line::
-
-   #include <algorithm>
+extract somewhere.
 
-to the files::
-
-   src\algorithm\LineIntersector.cpp
-   src\geom\LineSegment.cpp
-   src\io\WKTWriter.cpp
-   src\operation\buffer\OffsetCurveSetBuilder.cpp
-
-.. The actual commands were::
-   autogen.bat
-   nmake /f makefile.vc
-
-.. On Windows64, add ``WIN64=YES`` to the nmake command line.
+We are now using the 3.8.0 version which uses CMake (see PCRE
+above__).  For older releases, look in a previous versions of this
+file.
 
 In order to get a version number in the DLL that is produced, we added
-a file ``version.rc`` in the ``src`` folder.  The contents of the
-file are::
+a file ``version.rc`` in the ``src`` folder and added a reference to
+the sources for the ``geos`` subproject.  The contents of the file
+are::
 
  #include <Windows.h>
  LANGUAGE              LANG_ENGLISH, SUBLANG_ENGLISH_US
  VS_VERSION_INFO       VERSIONINFO
- FILEVERSION           3,6,2,0         // change as appropriate
- PRODUCTVERSION                3,6,2,0         // change as appropriate
+ FILEVERSION           3,8,0,0         // change as appropriate
+ PRODUCTVERSION                3,8,0,0         // change as appropriate
  FILEFLAGSMASK         0x3fL
  FILEFLAGS             0
  FILEOS                        VOS_NT_WINDOWS32
@@ -405,26 +390,8 @@ file are::
    END
  END
 
-To use it, we also added ``version.res`` at the end of the definition
-of the ``OBJ`` macro and to the list of dependencies of and the
-command for ``$(CDLLNAME)`` in ``src\Makefile.vc``.
-
-After this, install the library somewhere, e.g. in
-``C:\Libraries\geos-3.6.2.win32``::
-
- mkdir C:\Libraries\geos-3.6.2.win32
- mkdir C:\Libraries\geos-3.6.2.win32\lib
- mkdir C:\Libraries\geos-3.6.2.win32\bin
- mkdir C:\Libraries\geos-3.6.2.win32\include
- mkdir C:\Libraries\geos-3.6.2.win32\include\geos
- copy src\geos_c_i.lib C:\Libraries\geos-3.6.2.win32\lib
- copy src\geos_c.dll C:\Libraries\geos-3.6.2.win32\bin
- copy include C:\Libraries\geos-3.6.2.win32\include
- copy include\geos C:\Libraries\geos-3.6.2.win32\include\geos
- copy capi\geos_c.h C:\Libraries\geos-3.6.2.win32\include
-
 __ http://geos.refractions.net/
-__ http://trac.osgeo.org/geos/wiki/BuildingOnWindowsWithNMake
+__ pcre_cmake_
 
 Optional Packages
 =================
@@ -493,27 +460,28 @@ the following extra Cygwin packages in o
    Command Prompt and PATH contains the directory where cl.exe can be
    found; for 64 bit use --host=x86_64-w64-mingw32 and adapt LIB, PATH
    and prefix)::
-   INCLUDE='C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE;'\
-   'C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE;'\
-   'C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\ucrt;'\
-   'C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um;'\
-   'C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\shared;'\
-   'C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\um;'\
-   'C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\winrt;'
-   LIB='C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\LIB;'\
-   'C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\LIB;'\
-   'C:\Program Files (x86)\Windows Kits\10\lib\10.0.14393.0\ucrt\x86;'\
-   'C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\lib\um\x86;'\
-   'C:\Program Files (x86)\Windows Kits\10\lib\10.0.14393.0\um\x86;'
-   PATH="/cygdrive/c/Program Files (x86)/Microsoft Visual Studio 
14.0/VC/bin:$PATH"
+   vs='C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Community\VC\Tools\MSVC\14.23.28105'
+   INCLUDE="${vs}"'\ATLMFC\include;'"${vs}"'\include;' \
+   'C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um;' \
+   'C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt;' \
+   'C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared;' \
+   'C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um;' \
+   'C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt;' \
+   'C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\cppwinrt'
+   LIB="${vs}"'\ATLMFC\lib\x64;'"${vs}"'\lib\x64;' \
+   'C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\lib\um\x64;' \
+   'C:\Program Files (x86)\Windows Kits\10\lib\10.0.17763.0\ucrt\x64;' \
+   'C:\Program Files (x86)\Windows Kits\10\lib\10.0.17763.0\um\x64;'
+   PATH=$(cygpath "${vs}")/bin/Hostx64/x64:$PATH
+   prefix=/cygdrive/c/Libraries/iconv-1.16.win64-vs2019
    export INCLUDE LIB PATH
    win32_target=_WIN32_WINNT_WIN7
    prefix=/cygdrive/c/Libraries/iconv-1.15.win32-vs2015
    PATH="$prefix/bin:$PATH"
-   ./configure --host=i686-w64-mingw32 --prefix=$prefix \
+   ./configure --host=i686-w64-mingw32 --prefix="$prefix" \
               CC="$PWD/build-aux/compile cl -nologo" \
+              CXX="$PWD/build-aux/compile cl -nologo" \
               CFLAGS="-MD" \
-              CXX="$PWD/build-aux/compile cl -nologo" \
               CXXFLAGS="-MD" \
               CPPFLAGS="-D_WIN32_WINNT=$win32_target -I$prefix/include" \
               LDFLAGS="-L$prefix/lib" \
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
@@ -681,7 +681,6 @@ stdout of test 'MAL-signatures` in direc
 [ "bat",       "setColumn",    "command bat.setColumn(b:bat[:any_1], 
t:str):void ",    "BKCsetColumn;",        "Give a logical name to the tail 
column of a BAT."      ]
 [ "bat",       "setHash",      "command bat.setHash(b:bat[:any_1]):bit ",      
"BKCsetHash;",  "Create a hash structure on the column" ]
 [ "bat",       "setImprints",  "command bat.setImprints(b:bat[:any_1]):bit ",  
"BKCsetImprints;",      "Create an imprints structure on the column"    ]
-[ "bat",       "setKey",       "command bat.setKey(b:bat[:any_1], 
mode:bit):bat[:any_1] ",     "BKCsetkey;",   "Sets the 'key' property of the 
tail column to 'mode'. In 'key' mode,\n        the kernel will silently block 
insertions that cause a duplicate\n        entry in the head column."     ]
 [ "bat",       "setName",      "command bat.setName(b:bat[:any_1], s:str):void 
",      "BKCsetName;",  "Give a logical name to a BAT. "        ]
 [ "bat",       "setPersistent",        "command 
bat.setPersistent(b:bat[:any_1]):void ",       "BKCsetPersistent;",    "Make 
the BAT persistent."      ]
 [ "bat",       "setTransient", "command bat.setTransient(b:bat[:any_1]):void 
",        "BKCsetTransient;",     "Make the BAT transient.  Returns \n\tboolean 
which indicates if the\nBAT administration has indeed changed."   ]
diff --git a/clients/Tests/MAL-signatures.stable.out.int128 
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -787,7 +787,6 @@ stdout of test 'MAL-signatures` in direc
 [ "bat",       "setColumn",    "command bat.setColumn(b:bat[:any_1], 
t:str):void ",    "BKCsetColumn;",        "Give a logical name to the tail 
column of a BAT."      ]
 [ "bat",       "setHash",      "command bat.setHash(b:bat[:any_1]):bit ",      
"BKCsetHash;",  "Create a hash structure on the column" ]
 [ "bat",       "setImprints",  "command bat.setImprints(b:bat[:any_1]):bit ",  
"BKCsetImprints;",      "Create an imprints structure on the column"    ]
-[ "bat",       "setKey",       "command bat.setKey(b:bat[:any_1], 
mode:bit):bat[:any_1] ",     "BKCsetkey;",   "Sets the 'key' property of the 
tail column to 'mode'. In 'key' mode,\n        the kernel will silently block 
insertions that cause a duplicate\n        entry in the head column."     ]
 [ "bat",       "setName",      "command bat.setName(b:bat[:any_1], s:str):void 
",      "BKCsetName;",  "Give a logical name to a BAT. "        ]
 [ "bat",       "setPersistent",        "command 
bat.setPersistent(b:bat[:any_1]):void ",       "BKCsetPersistent;",    "Make 
the BAT persistent."      ]
 [ "bat",       "setTransient", "command bat.setTransient(b:bat[:any_1]):void 
",        "BKCsetTransient;",     "Make the BAT transient.  Returns \n\tboolean 
which indicates if the\nBAT administration has indeed changed."   ]
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
@@ -484,7 +484,6 @@ size_t strLen(const char *s);
 int strNil(const char *s);
 const char str_nil[2];
 gdk_return void_inplace(BAT *b, oid id, const void *val, bool force) 
__attribute__((__warn_unused_result__));
-gdk_return void_replace_bat(BAT *b, BAT *p, BAT *u, bool force) 
__attribute__((__warn_unused_result__));
 int win_mkdir(const char *, const int mode);
 int win_rename(const char *, const char *);
 int win_rmdir(const char *);
@@ -857,7 +856,6 @@ str BKCsetImprints(bit *ret, const bat *
 str BKCsetName(void *r, const bat *bid, const char *const *s);
 str BKCsetPersistent(void *r, const bat *bid);
 str BKCsetTransient(void *r, const bat *bid);
-str BKCsetkey(bat *res, const bat *bid, const bit *param);
 str BKCshrinkBAT(bat *ret, const bat *bid, const bat *did);
 str BLOBblob_blob(blob **d, blob **s);
 str BLOBblob_fromstr(blob **b, const char **d);
diff --git a/debian/monetdb5-server.install b/debian/monetdb5-server.install
--- a/debian/monetdb5-server.install
+++ b/debian/monetdb5-server.install
@@ -1,16 +1,17 @@
 debian/tmp/usr/bin/mserver5 usr/bin
 debian/tmp/usr/lib/x86_64-linux-gnu/libmonetdb5.so.* usr/lib/x86_64-linux-gnu
 
-# usr/lib/x86_64-linux-gnu/monetdb5/lib_*.so EXCEPT: 
lib_{bam,geom,gsl,lidar,pyapi,rapi,sql}.so
+# usr/lib/x86_64-linux-gnu/monetdb5/lib_*.so EXCEPT: 
lib_{bam,fits,geom,gsl,lidar,pyapi*,rapi,sql}.so
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/lib_capi.so 
usr/lib/x86_64-linux-gnu/monetdb5
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/lib_generator.so 
usr/lib/x86_64-linux-gnu/monetdb5
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/lib_opt_sql_append.so 
usr/lib/x86_64-linux-gnu/monetdb5
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/lib_udf.so 
usr/lib/x86_64-linux-gnu/monetdb5
 
-# usr/lib/x86_64-linux-gnu/monetdb5/*.mal EXCEPT: 
{bam,geom,gsl,lidar,pyapi,rapi,sql*,*_hge}.mal
-debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/[!bglprsu]*.mal 
usr/lib/x86_64-linux-gnu/monetdb5
+# usr/lib/x86_64-linux-gnu/monetdb5/*.mal EXCEPT: 
{bam,fits,geom,gsl,lidar,pyapi,rapi,sql*,*_hge}.mal
+debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/[!bfglprsu]*.mal 
usr/lib/x86_64-linux-gnu/monetdb5
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/ba[!m]*.mal 
usr/lib/x86_64-linux-gnu/monetdb5
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/b[!a]*.mal 
usr/lib/x86_64-linux-gnu/monetdb5
+debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/f[!i]*.mal 
usr/lib/x86_64-linux-gnu/monetdb5
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/generator.mal 
usr/lib/x86_64-linux-gnu/monetdb5
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/g[!es]*.mal 
usr/lib/x86_64-linux-gnu/monetdb5
 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/l[!i]*.mal 
usr/lib/x86_64-linux-gnu/monetdb5
diff --git a/gdk/ChangeLog b/gdk/ChangeLog
--- a/gdk/ChangeLog
+++ b/gdk/ChangeLog
@@ -1,6 +1,11 @@
 # ChangeLog file for MonetDB
 # This file is updated with Maddlog
 
+* Tue Dec  3 2019 Sjoerd Mullender <sjo...@acm.org>
+- Removed the tunique property.  The tunique property indicated that
+  all values in the column had to be distinct.  It was removed because
+  it wasn't used.
+
 * Fri Nov 22 2019 Sjoerd Mullender <sjo...@acm.org>
 - BATrangeselect now has two extra arguments: anti and symmetric
   (both bool).
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -716,7 +716,6 @@ gdk_export int VALisnil(const ValRecord 
  *           int    ttype;            // Tail type number
  *           str    tident;           // name for tail column
  *           bool   tkey;             // tail values are unique
- *           bool   tunique;          // tail values must be kept unique
  *           bool   tnonil;           // tail has no nils
  *           bool   tsorted;          // are tail values currently ordered?
  *           bool   tvarsized;        // for speed: tail type is varsized?
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to