Changeset: 03ccd61ebc80 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=03ccd61ebc80
Removed Files:
        sql/backends/monet5/sql_session.c
        sql/backends/monet5/sql_session.h
        sql/backends/monet5/sql_session.mal
Modified Files:
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures.stable.out.int128
        clients/Tests/exports.stable.out
        gdk/gdk.h
        gdk/gdk_aggr.c
        gdk/gdk_align.c
        gdk/gdk_bat.c
        gdk/gdk_batop.c
        gdk/gdk_bbp.c
        gdk/gdk_group.c
        gdk/gdk_join.c
        gdk/gdk_logger.c
        gdk/gdk_logger.h
        gdk/gdk_logger_internals.h
        gdk/gdk_private.h
        monetdb5/mal/mal_authorize.c
        monetdb5/mal/mal_debugger.c
        monetdb5/mal/mal_interpreter.c
        monetdb5/mal/mal_parser.c
        monetdb5/mal/mal_prelude.c
        monetdb5/mal/mal_profiler.c
        monetdb5/modules/atoms/json.c
        monetdb5/modules/kernel/batmmath.c
        monetdb5/modules/kernel/batstr.c
        monetdb5/modules/mal/CMakeLists.txt
        monetdb5/modules/mal/batcalc.c
        monetdb5/modules/mal/remote.c
        monetdb5/modules/mal/tablet.c
        monetdb5/modules/mal/tokenizer.c
        monetdb5/optimizer/opt_mergetable.c
        monetdb5/optimizer/opt_pushselect.c
        monetdb5/optimizer/opt_remap.c
        sql/backends/monet5/CMakeLists.txt
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql.c
        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/backends/monet5/sql_upgrades.c
        sql/backends/monet5/vaults/fits/fits.c
        sql/common/sql_types.c
        sql/include/sql_catalog.h
        sql/server/rel_optimizer.c
        sql/server/rel_updates.c
        sql/server/sql_mvc.c
        sql/server/sql_mvc.h
        sql/server/sql_parser.y
        sql/storage/bat/bat_logger.c
        sql/storage/bat/bat_storage.c
        sql/storage/bat/bat_table.c
        sql/storage/sql_storage.h
        sql/storage/store.c
        
sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.stable.out
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out
        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/mergetables/Tests/part-elim.stable.out
        sql/test/sys-schema/Tests/systemfunctions.stable.out
        sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
        tools/merovingian/daemon/controlrunner.c
        tools/monetdbe/monetdbe.c
Branch: unlock
Log Message:

merged with default + adapted for unlock code...


diffs (truncated from 147710 to 300 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -161,16 +161,13 @@ BuildRequires: pkgconfig(libR)
 BuildRequires: texlive-obsolete
 %endif
 %endif
-# if we were to compile with cmocka support (-DWITH_CMOCKA=ON):
-# BuildRequires: pkgconfig(cmocka)
-# if we were to compile with NetCDF support (-DNETCDF=ON):
-# BuildRequires: pkgconfig(netcdf)
-# if we were to compile with proj support (-DWITH_PROJ=ON):
-# BuildRequires: pkgconfig(proj)
-# if we were to compile with snappy support (-DWITH_SNAPPY=ON):
-# BuildRequires: pkgconfig(snappy)
-# if we were to compile with valgrind support (-DWITH_VALGRIND=ON):
-# BuildRequires: pkgconfig(valgrind)
+# optional packages:
+# BuildRequires: pkgconfig(cmocka)     # -DWITH_CMOCKA=ON
+# BuildRequires: pkgconfig(gdal)       # -DSHP=ON
+# BuildRequires: pkgconfig(netcdf)     # -DNETCDF=ON
+# BuildRequires: pkgconfig(proj)       # -DWITH_PROJ=ON
+# BuildRequires: pkgconfig(snappy)     # -DWITH_SNAPPY=ON
+# BuildRequires: pkgconfig(valgrind)   # -DWITH_VALGRIND=ON
 
 %if (0%{?fedora} >= 22)
 Recommends: %{name}-SQL-server5%{?_isa} = %{version}-%{release}
@@ -868,6 +865,15 @@ else
 fi
 %endif
 
+%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
+# fix up some paths (/var/run -> /run)
+# needed because CMAKE_INSTALL_RUNSTATEDIR refers to /var/run
+sed -i 's|/var/run|/run|' \
+    %{buildroot}%{_tmpfilesdir}/monetdbd.conf \
+    %{buildroot}%{_localstatedir}/monetdb5/dbfarm/.merovingian_properties \
+    %{buildroot}%{_unitdir}/monetdbd.service
+%endif
+
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
diff --git a/NT/mkodbcwxs.py b/NT/mkodbcwxs.py
--- a/NT/mkodbcwxs.py
+++ b/NT/mkodbcwxs.py
@@ -80,9 +80,9 @@ def main():
                r'lib\MonetODBC.dll', # r'lib\MonetODBC.pdb',
                r'lib\MonetODBCs.dll', # r'lib\MonetODBCs.pdb',
                r'bin\stream.dll', # r'lib\stream.pdb',
-               vcpkg.format(r'bin\libiconv.dll'),
+               vcpkg.format(r'bin\iconv-2.dll'),
                vcpkg.format(r'bin\bz2.dll'),
-               vcpkg.format(r'bin\libcharset.dll'), # for libiconv.dll
+               vcpkg.format(r'bin\charset-1.dll'), # for iconv-2.dll
                vcpkg.format(r'bin\libcrypto-1_1{}.dll'.format(libcrypto)),
                vcpkg.format(r'bin\zlib1.dll')])
     print(r'            </Directory>')
diff --git a/NT/mksqlwxs.py b/NT/mksqlwxs.py
--- a/NT/mksqlwxs.py
+++ b/NT/mksqlwxs.py
@@ -145,10 +145,10 @@ def main():
                r'bin\monetdb5.dll',
                r'bin\monetdbsql.dll',
                r'bin\stream.dll',
-               vcpkg.format(r'bin\libiconv.dll'),
+               vcpkg.format(r'bin\iconv-2.dll'),
                vcpkg.format(r'bin\bz2.dll'),
+               vcpkg.format(r'bin\charset-1.dll'), # for iconv-2.dll
                vcpkg.format(r'bin\getopt.dll'),
-               vcpkg.format(r'bin\libcharset.dll'), # for libiconv.dll
                vcpkg.format(r'bin\libcrypto-1_1{}.dll'.format(libcrypto)),
                vcpkg.format(r'bin\libxml2.dll'),
                vcpkg.format(r'bin\lz4.dll'),
@@ -199,10 +199,10 @@ def main():
                r'lib\monetdb5.lib',
                r'lib\monetdbsql.lib',
                r'lib\stream.lib',
-               vcpkg.format(r'lib\libiconv.lib'),
+               vcpkg.format(r'lib\iconv.lib'),
                vcpkg.format(r'lib\bz2.lib'),
+               vcpkg.format(r'lib\charset.lib'),
                vcpkg.format(r'lib\getopt.lib'),
-               vcpkg.format(r'lib\libcharset.lib'),
                vcpkg.format(r'lib\libcrypto.lib'),
                vcpkg.format(r'lib\libxml2.lib'),
                vcpkg.format(r'lib\lz4.lib'),
diff --git a/README.rst b/README.rst
--- a/README.rst
+++ b/README.rst
@@ -131,10 +131,16 @@ Bugs
 ----
 
 We of course hope there aren't any, but if you do find one, you can
-report bugs in our `bugzilla`__ instance.
+report bugs in our `github`__ repository.
+
+Please note that we do not accept github Pull Requests. See the
+`developers`__ page for instructions.
 
-.. _bugzilla: https://bugs.monetdb.org
-__ bugzilla_
+.. _github: https://github.com/MonetDB/MonetDB/issues
+__ github_
+
+.. _developers: https://www.monetdb.org/Developers
+__ developers_
 
 Copyright Notice
 ================
diff --git a/buildtools/coverity_model.c b/buildtools/coverity_model.c
new file mode 100644
--- /dev/null
+++ b/buildtools/coverity_model.c
@@ -0,0 +1,185 @@
+/*
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0.  If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
+ */
+
+/*
+ * This file contains a model for Coverity Scan.
+ * This file is not a normal source file.  It is not compiled by any
+ * compiler, but instead it is uploaded to the Coverity site and used
+ * during any analysis they do on our code.
+ *
+ * We model our use of the various allocation functions.
+ * Things we want to do is model that GDKmalloc and friends are paired
+ * with GDKfree, and that exceptions created by createException and
+ * createMalException should be freed with freeException.
+ *
+ * author: Sjoerd Mullender
+ */
+
+typedef enum { GDK_FAIL, GDK_SUCCEED } gdk_return;
+typedef struct {} *MalBlkPtr;
+
+void
+GDKfree(void *blk)
+{
+       if (blk) {
+               __coverity_free__(blk);
+               __coverity_mark_as_afm_freed__(blk, "GDKfree");
+       }
+}
+
+void *
+GDKmalloc(size_t size)
+{
+       int has_memory;
+       __coverity_negative_sink__(size);
+       if(has_memory) {
+               void *p = __coverity_alloc__(size);
+               __coverity_mark_as_afm_allocated__(p, "GDKfree");
+               __coverity_mark_as_uninitialized_buffer__(p);
+               return p;
+       }
+       return 0;
+}
+
+void *
+GDKzalloc(size_t size)
+{
+       void *p = GDKmalloc(size);
+       if (p) {
+               for (size_t i = 0; i < size; i++)
+                       ((char *) p)[i] = 0;
+       }
+       return p;
+}
+
+char *
+GDKstrdup(const char *s)
+{
+       char *p;
+       size_t i;
+       int has_memory;
+       if (s == 0)
+               return 0;
+       __coverity_string_null_sink__(s);
+       __coverity_string_size_sink__(s);
+       if (has_memory) {
+               p = __coverity_alloc_nosize__();
+               __coverity_mark_as_afm_allocated__(p, "GDKfree");
+               for (i = 0; (p[i] = s[i]); i++)
+                       ;
+               return p;
+       }
+       return 0;
+}
+
+char *
+GDKstrndup(const char *s, size_t size)
+{
+       char *p;
+       size_t i;
+       __coverity_negative_sink__(size);
+       if (s == 0)
+               return 0;
+       p = GDKmalloc(size + 1);
+       if (p) {
+               for (i = 0; i < size && (p[i] = s[i]); i++)
+                       ;
+               p[i] = 0;
+       }
+       return p;
+}
+
+void *
+GDKrealloc(void *blk, size_t size)
+{
+       void *p = GDKmalloc(size);
+       if (p != 0)
+               GDKfree(blk);
+       return p;
+}
+
+void *
+GDKmmap(const char *path, int mode, size_t size)
+{
+       int has_memory;
+       __coverity_negative_sink__(size);
+       if (has_memory) {
+               void *p = __coverity_alloc__(size);
+               __coverity_mark_as_afm_allocated__(p, "GDKmunmap");
+               __coverity_writeall__(p);
+               return p;
+       }
+       return 0;
+}
+
+gdk_return
+GDKmunmap(void *p, size_t size)
+{
+       int failed;
+       __coverity_free__(p);
+       __coverity_mark_as_afm_freed__(p, "GDKmunmap");
+       return failed ? GDK_FAIL : GDK_SUCCEED;
+}
+
+void *
+GDKmremap(const char *path, int mode, void *old_address, size_t old_size, 
size_t *new_size)
+{
+       void *p = GDKmmap(path, mode, new_size);
+       if (p) {
+               (void) GDKmunmap(old_address, old_size);
+       }
+       return p;
+}
+
+char *
+createException(enum malexception type, const char *fcn, const char *format, 
...)
+{
+       char *p;
+       __coverity_format_string_sink__(format);
+       p = __coverity_alloc_nosize__();
+       __coverity_mark_as_afm_allocated__(p, "freeException");
+       return p;
+}
+
+char *
+createMalException(MalBlkPtr mb, int pc, enum malexception type, const char 
*format, ...)
+{
+       char *p;
+       __coverity_format_string_sink__(format);
+       p = __coverity_alloc_nosize__();
+       __coverity_mark_as_afm_allocated__(p, "freeException");
+       return p;
+}
+
+char *
+dupError(const char *err)
+{
+       char *p;
+       p = __coverity_alloc_nosize__();
+       __coverity_mark_as_afm_allocated__(p, "freeException");
+       return p;
+}
+
+void
+freeException(char *p)
+{
+       if (p) {
+               __coverity_free__(p);
+               __coverity_mark_as_afm_freed__(p, "freeException");
+       }
+}
+
+char *
+concatErrors(char *err1, const char *err2)
+{
+       freeException(err1);
+       char *p;
+       p = __coverity_alloc_nosize__();
+       __coverity_mark_as_afm_allocated__(p, "freeException");
+       return p;
+}
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to