Changeset: 5d7c7e32a7aa for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5d7c7e32a7aa
Added Files:
        sql/test/BugTracker-2019/Tests/cast-interval.Bug-6793.sql
        sql/test/BugTracker-2019/Tests/cast-interval.Bug-6793.stable.err
        sql/test/BugTracker-2019/Tests/cast-interval.Bug-6793.stable.out
        sql/test/BugTracker-2019/Tests/could-not-allocate-space.Bug-6795.sql
        
sql/test/BugTracker-2019/Tests/could-not-allocate-space.Bug-6795.stable.err
        
sql/test/BugTracker-2019/Tests/could-not-allocate-space.Bug-6795.stable.out
        sql/test/BugTracker-2019/Tests/python-aggregate-no-groups.Bug-6726.sql
        
sql/test/BugTracker-2019/Tests/python-aggregate-no-groups.Bug-6726.stable.err
        
sql/test/BugTracker-2019/Tests/python-aggregate-no-groups.Bug-6726.stable.out
        sql/test/scanner/Tests/mserver_with_raw_strings.options5
        sql/test/scanner/Tests/mserver_with_raw_strings.sql
        sql/test/scanner/Tests/mserver_with_raw_strings.stable.err
        sql/test/scanner/Tests/mserver_with_raw_strings.stable.out
        sql/test/scanner/Tests/mserver_without_raw_strings.options5
        sql/test/scanner/Tests/mserver_without_raw_strings.sql
        sql/test/scanner/Tests/mserver_without_raw_strings.stable.err
        sql/test/scanner/Tests/mserver_without_raw_strings.stable.out
Modified Files:
        ChangeLog
        NT/monetdb_config.h.in
        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
        clients/mapiclient/dump.c
        clients/mapiclient/msqldump.c
        common/options/monet_options.c
        configure.ag
        debian/monetdb5-server.install
        gdk/ChangeLog
        gdk/gdk.h
        gdk/gdk_align.c
        gdk/gdk_bat.c
        gdk/gdk_batop.c
        gdk/gdk_logger.c
        gdk/gdk_posix.c
        monetdb5/ChangeLog
        monetdb5/extras/rapi/rapi.c
        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
        monetdb5/modules/mal/querylog.c
        monetdb5/modules/mal/wlc.h
        monetdb5/optimizer/opt_evaluate.c
        monetdb5/optimizer/opt_pipes.c
        sql/backends/monet5/Tests/pyapi05.stable.out
        sql/backends/monet5/Tests/rapi05.stable.out
        sql/backends/monet5/UDF/pyapi/conversion.c
        sql/backends/monet5/UDF/pyapi/convert_loops.h
        sql/backends/monet5/UDF/pyapi/pyapi.c
        sql/backends/monet5/UDF/pyapi/pyloader.c
        sql/backends/monet5/UDF/pyapi/pytypes.c
        sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_05.stable.out
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql_rank.c
        sql/backends/monet5/sql_result.c
        sql/backends/monet5/sql_scenario.c
        sql/backends/monet5/sql_statement.c
        sql/backends/monet5/sql_upgrades.c
        sql/include/sql_catalog.h
        sql/include/sql_relation.h
        sql/rel.txt
        sql/server/rel_dump.c
        sql/server/rel_exp.c
        sql/server/rel_exp.h
        sql/server/rel_optimizer.c
        sql/server/rel_planner.c
        sql/server/rel_propagate.c
        sql/server/rel_psm.c
        sql/server/rel_rel.c
        sql/server/rel_rel.h
        sql/server/rel_select.c
        sql/server/rel_sequence.c
        sql/server/rel_unnest.c
        sql/server/rel_unnest.h
        sql/server/rel_updates.c
        sql/server/sql_atom.c
        sql/server/sql_atom.h
        sql/server/sql_partition.c
        sql/server/sql_scan.c
        sql/server/sql_semantic.c
        sql/storage/bat/bat_logger.c
        sql/storage/bat/bat_storage.c
        sql/storage/bat/bat_table.c
        
sql/test/BugDay_2005-12-19_2.9.3/Tests/cast_bigint_to_int.SF-1211903.stable.out
        
sql/test/BugTracker-2008/Tests/decimal_cast_in_view.SF-2075223.stable.out
        
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-2013/Tests/numeric-column-alias.Bug-3279.stable.out
        sql/test/BugTracker-2014/Tests/missing_alias.Bug-3626.stable.out
        sql/test/BugTracker-2015/Tests/crash.Bug-3736.stable.out
        sql/test/BugTracker-2015/Tests/string-to-inet.Bug-3666.stable.out
        
sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.stable.out.int128
        sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out
        
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out.int128
        
sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out
        sql/test/BugTracker-2017/Tests/groupby_assertion.Bug-6338.stable.err
        sql/test/BugTracker-2017/Tests/sqlsmith.Bug-6219.stable.out
        sql/test/BugTracker-2017/Tests/sqlsmith01.stable.out
        sql/test/BugTracker-2018/Tests/convert-key.Bug-6648.stable.out
        
sql/test/BugTracker-2018/Tests/count_from_commented_function_signatures.Bug-6542.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.err
        sql/test/BugTracker-2019/Tests/All
        sql/test/BugTracker-2019/Tests/prepare-types.Bug-6724.stable.out
        sql/test/BugTracker/Tests/convert_dec2varchar.SF-1774312.stable.out
        sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
        sql/test/Tests/keys.stable.out
        sql/test/Tests/window_functions.stable.out
        sql/test/analytics/Tests/analytics00.stable.out
        sql/test/analytics/Tests/analytics01.stable.out
        sql/test/bugs/Tests/cast_varchar2int-bug-sf-964165.stable.out
        sql/test/emptydb/Tests/check.SQL.py
        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/mergetables/Tests/mergeinit.stable.err
        sql/test/mergetables/Tests/sqlsmith-exists.sql
        sql/test/mergetables/Tests/sqlsmith-exists.stable.out
        sql/test/miscellaneous/Tests/groupby_expressions.stable.err
        sql/test/pg_regress/Tests/date.stable.out
        sql/test/pg_regress/Tests/int8.stable.out
        sql/test/pg_regress/Tests/int8.stable.out.int128
        sql/test/scanner/Tests/All
        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
        sql/test/sys-schema/Tests/bam_tables_checks.stable.out
        sql/test/sys-schema/Tests/check_MaxStrLength_violations.stable.out
        tools/merovingian/client/monetdb.1
        tools/merovingian/daemon/forkmserver.c
        tools/merovingian/utils/properties.c
        tools/mserver/mserver5.1.in
        tools/mserver/mserver5.c
Branch: json
Log Message:

Merge branch 'local_master' into local_json


diffs (truncated from 23286 to 300 lines):

diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,11 @@
 # ChangeLog file for devel
 # This file is updated with Maddlog
 
+* Fri Dec  6 2019 Panagiotis Koutsourakis <[email protected]>
+- Added mserver5 option (--set raw_strings=true|false) and monetdb
+  database property (raw_strings=yes|no) to control interpretation
+  of strings.
+
 * Fri Nov 29 2019 Panagiotis Koutsourakis <[email protected]>
 - Added support for raw strings using the syntax r'' or R''. This means
   that C-like escapes will remain uninterpreted within those strings. For
diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -394,9 +394,6 @@
 /* Define if semtimedop exists */
 /* #undef HAVE_SEMTIMEDOP */
 
-/* Define to 1 if you have the `setenv' function. */
-/* #undef HAVE_SETENV */
-
 /* Define to 1 if you have the `setsid' function. */
 /* #undef HAVE_SETSID */
 
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/clients/mapiclient/dump.c b/clients/mapiclient/dump.c
--- a/clients/mapiclient/dump.c
+++ b/clients/mapiclient/dump.c
@@ -128,7 +128,17 @@ squoted_print(stream *f, const char *s, 
        if (mnstr_printf(f, "%c", quote) < 0)
                return -1;
        while (*s) {
+               size_t n = strcspn(s, "\\'\"\177"
+                                  "\001\002\003\004\005\006\007"
+                                  "\010\011\012\013\014\015\016\017"
+                                  "\020\021\022\023\024\025\026\027"
+                                  "\030\031\032\033\034\035\036\037");
+               if (n > 0 && mnstr_write(f, s, 1, n) < 0)
+                       return -1;
+               s += n;
                switch (*s) {
+               case '\0':
+                       continue;
                case '\\':
                        if (mnstr_write(f, "\\\\", 1, 2) < 0)
                                return -1;
@@ -148,13 +158,8 @@ squoted_print(stream *f, const char *s, 
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to