Changeset: 7c95938cb114 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7c95938cb114 Added Files: debian/monetdb-python2.install sql/backends/monet5/Tests/shutdown.py sql/backends/monet5/Tests/shutdown.stable.err sql/backends/monet5/Tests/shutdown.stable.out sql/backends/monet5/UDF/pyapi/conversion.c sql/backends/monet5/UDF/pyapi/conversion.h sql/backends/monet5/UDF/pyapi/pyheader.h sql/backends/monet5/UDF/pyapi/undef.h sql/test/BugTracker-2016/Tests/case-column-when-null-Bug-6124.sql sql/test/BugTracker-2016/Tests/case-column-when-null-Bug-6124.stable.err sql/test/BugTracker-2016/Tests/case-column-when-null-Bug-6124.stable.out sql/test/BugTracker-2016/Tests/column_name_lost_in_in_operator.Bug-6123.sql sql/test/BugTracker-2016/Tests/column_name_lost_in_in_operator.Bug-6123.stable.err sql/test/BugTracker-2016/Tests/column_name_lost_in_in_operator.Bug-6123.stable.out sql/test/BugTracker-2016/Tests/nested-subquery-in-select.Bug-6125.sql sql/test/BugTracker-2016/Tests/nested-subquery-in-select.Bug-6125.stable.err sql/test/BugTracker-2016/Tests/nested-subquery-in-select.Bug-6125.stable.out sql/test/BugTracker-2016/Tests/select-in-from.Bug-6119.sql sql/test/BugTracker-2016/Tests/select-in-from.Bug-6119.stable.err sql/test/BugTracker-2016/Tests/select-in-from.Bug-6119.stable.out sql/test/BugTracker-2016/Tests/select-in-from.Bug-6121.sql sql/test/BugTracker-2016/Tests/select-in-from.Bug-6121.stable.err sql/test/BugTracker-2016/Tests/select-in-from.Bug-6121.stable.out tools/mserver/shutdowntest.c Removed Files: sql/backends/monet5/UDF/pyapi/unspecified_evil.h Modified Files: MonetDB.spec buildtools/ChangeLog.Dec2016 clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out configure.ag debian/control debian/monetdb-client-testing.install debian/monetdb5-server.install debian/rules gdk/ChangeLog gdk/ChangeLog.Dec2016 gdk/gdk.h gdk/gdk_align.c gdk/gdk_bat.c gdk/gdk_batop.c gdk/gdk_bbp.c gdk/gdk_calc.c gdk/gdk_calc_compare.h gdk/gdk_hash.h gdk/gdk_join.c gdk/gdk_logger.c gdk/gdk_project.c gdk/gdk_search.c gdk/gdk_system.c gdk/gdk_utils.c gdk/gdk_utils.h monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out monetdb5/extras/rapi/Tests/rapi02.stable.out monetdb5/extras/rapi/rapi.R monetdb5/mal/mal.c monetdb5/mal/mal.h monetdb5/mal/mal_debugger.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_instruction.h monetdb5/mal/mal_module.c monetdb5/mal/mal_module.h monetdb5/mal/mal_profiler.c monetdb5/mal/mal_session.c monetdb5/mal/mal_stack.c monetdb5/modules/atoms/json.c monetdb5/modules/atoms/mtime.c monetdb5/modules/kernel/aggr.mal monetdb5/modules/kernel/aggr.mal.sh monetdb5/modules/kernel/algebra.mal monetdb5/modules/kernel/bat5.c monetdb5/modules/kernel/bat5.h monetdb5/modules/kernel/bat5.mal monetdb5/modules/mal/Tests/inspect05.stable.out.int128 monetdb5/modules/mal/inspect.c monetdb5/modules/mal/manual.c monetdb5/modules/mal/mat.c monetdb5/modules/mal/pcre.c monetdb5/modules/mal/tablet.c monetdb5/optimizer/Tests/GCexample01.stable.out monetdb5/optimizer/Tests/dataflow3.stable.out monetdb5/optimizer/opt_aliases.c monetdb5/optimizer/opt_candidates.c monetdb5/optimizer/opt_emptybind.c monetdb5/optimizer/opt_garbageCollector.c monetdb5/optimizer/opt_jit.c monetdb5/optimizer/opt_matpack.c monetdb5/optimizer/opt_multiplex.c monetdb5/optimizer/opt_pipes.c monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_pushselect.c monetdb5/optimizer/opt_querylog.c monetdb5/optimizer/opt_support.c monetdb5/optimizer/opt_wrapper.c sql/backends/monet5/Tests/All sql/backends/monet5/Tests/pyapi09.sql sql/backends/monet5/Tests/pyapi21.sql sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.out sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.out sql/backends/monet5/UDF/pyapi/Makefile.ag sql/backends/monet5/UDF/pyapi/connection.c sql/backends/monet5/UDF/pyapi/connection.h sql/backends/monet5/UDF/pyapi/convert_loops.h sql/backends/monet5/UDF/pyapi/emit.c sql/backends/monet5/UDF/pyapi/formatinput.c sql/backends/monet5/UDF/pyapi/formatinput.h sql/backends/monet5/UDF/pyapi/pyapi.c sql/backends/monet5/UDF/pyapi/pyapi.h sql/backends/monet5/UDF/pyapi/pyloader.c sql/backends/monet5/UDF/pyapi/pytypes.c sql/backends/monet5/UDF/pyapi/pytypes.h sql/backends/monet5/UDF/pyapi/type_conversion.c sql/backends/monet5/UDF/pyapi/type_conversion.h sql/backends/monet5/UDF/pyapi/unicode.c sql/backends/monet5/UDF/pyapi/unicode.h sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql_execute.c sql/backends/monet5/sql_gencode.c sql/backends/monet5/sql_optimizer.c 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/storage/bat/bat_storage.c sql/storage/bat/bat_table.c sql/storage/store.c sql/test/BugTracker-2009/Tests/POWER_vs_prod.SF-2596114.stable.out sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out sql/test/BugTracker-2010/Tests/LIMIT_OFFSET_big-endian.Bug-2622.stable.out sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.sql sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out sql/test/BugTracker-2011/Tests/crash_on_alias.Bug-2798.sql sql/test/BugTracker-2011/Tests/crash_on_alias.Bug-2798.stable.out.int128 sql/test/BugTracker-2011/Tests/func_iter_vs_bulk.Bug-2826.sql sql/test/BugTracker-2011/Tests/func_iter_vs_bulk.Bug-2826.stable.out sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.stable.out sql/test/BugTracker-2013/Tests/between.Bug-3259.sql sql/test/BugTracker-2013/Tests/between.Bug-3259.stable.out.int128 sql/test/BugTracker-2014/Tests/manifold.Bug-3556.stable.out sql/test/BugTracker-2014/Tests/nil_2dec_lng.Bug-3592.sql sql/test/BugTracker-2014/Tests/nil_2dec_lng.Bug-3592.stable.out sql/test/BugTracker-2014/Tests/nil_2dec_lng.Bug-3592.stable.out.single sql/test/BugTracker-2014/Tests/querylog.Bug-3607.stable.out sql/test/BugTracker-2015/Tests/crash.Bug-3736.stable.out sql/test/BugTracker-2015/Tests/useless_casts.Bug-3756.sql sql/test/BugTracker-2015/Tests/useless_casts.Bug-3756.stable.out sql/test/BugTracker-2016/Tests/All sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.out sql/test/BugTracker-2016/Tests/storagemodel.stable.out sql/test/BugTracker-2016/Tests/storagemodel.stable.out.int128 sql/test/BugTracker/Tests/explain.SF-1739353.stable.out sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out sql/test/Tests/setoptimizer.stable.out sql/test/Tests/setoptimizer.stable.out.Windows sql/test/mapi/Tests/sql_int128.stable.out sql/test/mergetables/Tests/mergequery.stable.out sql/test/remote/Tests/partition_elim.stable.out tools/mserver/Makefile.ag tools/mserver/monet_version.c.in Branch: data-vaults Log Message:
Merge with default diffs (truncated from 14444 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -87,6 +87,16 @@ %endif %endif +# If the _without_pyintegration macro is not set, the MonetDB-python2 +# RPM will be created. The macro can be set when using mock by +# passing it the flag --without=pyintegration. +# On RHEL 6, numpy is too old. +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7 +%if %{?_without_pyintegration:0}%{!?_without_pyintegration:1} +%define with_pyintegration 1 +%endif +%endif + %if %{fedpkgs} # If the _with_fits macro is set, the MonetDB-cfitsio RPM will be # created. The macro can be set when using mock by passing it the @@ -146,7 +156,6 @@ BuildRequires: libuuid-devel BuildRequires: libxml2-devel BuildRequires: openssl-devel BuildRequires: pcre-devel >= 4.5 -BuildRequires: python-devel BuildRequires: readline-devel BuildRequires: unixODBC-devel # BuildRequires: uriparser-devel @@ -154,6 +163,20 @@ BuildRequires: zlib-devel %if %{?with_samtools:1}%{!?with_samtools:0} BuildRequires: samtools-devel %endif +%if %{?with_pyintegration:1}%{!?with_pyintegration:0} +BuildRequires: python-devel +%if %{?rhel:1}%{!?rhel:0} +# RedHat Enterprise Linux calls it simply numpy +BuildRequires: numpy +%else +%if (0%{?fedora} >= 24) +BuildRequires: python2-numpy +%else +# Fedora <= 23 doesn't have python2-numpy +BuildRequires: numpy +%endif +%endif +%endif %if %{?with_rintegration:1}%{!?with_rintegration:0} BuildRequires: R-core-devel %endif @@ -387,6 +410,7 @@ developer. %{_bindir}/sample4 %{_bindir}/smack00 %{_bindir}/smack01 +%{_bindir}/shutdowntest %{_bindir}/testgetinfo %{_bindir}/malsample.pl %{_bindir}/sqlsample.php @@ -509,6 +533,32 @@ install it. %{_libdir}/monetdb5/lib_rapi.so %endif +%if %{?with_pyintegration:1}%{!?with_pyintegration:0} +%package python2 +Summary: Integration of MonetDB and Python, allowing use of Python from within SQL +Group: Applications/Databases +Requires: MonetDB-SQL-server5%{?_isa} = %{version}-%{release} + +%description python2 +MonetDB is a database management system that is developed from a +main-memory perspective with use of a fully decomposed storage model, +automatic index management, extensibility of data types and search +accelerators. It also has an SQL frontend. + +This package contains the interface to use the Python language from +within SQL queries. This package is for Python 2. + +NOTE: INSTALLING THIS PACKAGE OPENS UP SECURITY ISSUES. If you don't +know how this package affects the security of your system, do not +install it. + +%files python2 +%defattr(-,root,root) +%{_libdir}/monetdb5/pyapi.* +%{_libdir}/monetdb5/autoload/*_pyapi.mal +%{_libdir}/monetdb5/lib_pyapi.so +%endif + %if %{?with_fits:1}%{!?with_fits:0} %package cfitsio Summary: MonetDB: Add on module that provides support for FITS files @@ -537,7 +587,6 @@ Summary: MonetDB - Monet Database Manage Group: Applications/Databases Requires(pre): shadow-utils Requires: %{name}-client%{?_isa} = %{version}-%{release} -Obsoletes: MonetDB5-server-rdf %if (0%{?fedora} >= 22) Recommends: %{name}-SQL-server5%{?_isa} = %{version}-%{release} %if %{bits} == 64 @@ -597,6 +646,9 @@ fi %if %{?with_lidar:1}%{!?with_lidar:0} %exclude %{_libdir}/monetdb5/lidar.mal %endif +%if %{?with_pyintegration:1}%{!?with_pyintegration:0} +%exclude %{_libdir}/monetdb5/pyapi.mal +%endif %if %{?with_rintegration:1}%{!?with_rintegration:0} %exclude %{_libdir}/monetdb5/rapi.mal %endif @@ -613,6 +665,9 @@ fi %if %{?with_lidar:1}%{!?with_lidar:0} %exclude %{_libdir}/monetdb5/autoload/*_lidar.mal %endif +%if %{?with_pyintegration:1}%{!?with_pyintegration:0} +%exclude %{_libdir}/monetdb5/autoload/*_pyapi.mal +%endif %if %{?with_rintegration:1}%{!?with_rintegration:0} %exclude %{_libdir}/monetdb5/autoload/*_rapi.mal %endif @@ -625,6 +680,9 @@ fi %if %{?with_lidar:1}%{!?with_lidar:0} %exclude %{_libdir}/monetdb5/lib_lidar.so %endif +%if %{?with_pyintegration:1}%{!?with_pyintegration:0} +%exclude %{_libdir}/monetdb5/lib_pyapi.so +%endif %if %{?with_rintegration:1}%{!?with_rintegration:0} %exclude %{_libdir}/monetdb5/lib_rapi.so %endif @@ -692,8 +750,6 @@ Requires: MonetDB5-server%{?_isa} = %{ve # RHEL >= 7, and all current Fedora Requires: %{_bindir}/systemd-tmpfiles %endif -Obsoletes: MonetDB-SQL-devel -Obsoletes: %{name}-SQL %if (0%{?fedora} >= 22) %if %{bits} == 64 Recommends: %{name}-SQL-server5-hugeint%{?_isa} = %{version}-%{release} @@ -784,7 +840,6 @@ frontend of MonetDB. %package testing Summary: MonetDB - Monet Database Management System Group: Applications/Databases -Obsoletes: MonetDB-python %description testing MonetDB is a database management system that is developed from a @@ -847,12 +902,12 @@ developer, but if you do want to test, t --enable-int128=%{?with_int128:yes}%{!?with_int128:no} \ --enable-lidar=%{?with_lidar:yes}%{!?with_lidar:no} \ --enable-mapi=yes \ - --enable-microhttpd=no \ --enable-monetdb5=yes \ --enable-netcdf=no \ --enable-odbc=yes \ --enable-optimize=yes \ --enable-profile=no \ + --enable-pyintegration=%{?with_pyintegration:yes}%{!?with_pyintegration:no} \ --enable-rintegration=%{?with_rintegration:yes}%{!?with_rintegration:no} \ --enable-shp=no \ --enable-sql=yes \ @@ -868,7 +923,8 @@ developer, but if you do want to test, t --with-openssl=yes \ --with-proj=no \ --with-pthread=yes \ - --with-python=yes \ + --with-python2=yes \ + --with-python3=no \ --with-readline=yes \ --with-samtools=%{?with_samtools:yes}%{!?with_samtools:no} \ --with-sphinxclient=no \ diff --git a/buildtools/ChangeLog.Dec2016 b/buildtools/ChangeLog.Dec2016 --- a/buildtools/ChangeLog.Dec2016 +++ b/buildtools/ChangeLog.Dec2016 @@ -1,6 +1,10 @@ # ChangeLog file for buildtools # This file is updated with Maddlog +* Tue Dec 6 2016 Sjoerd Mullender <sjo...@acm.org> +- New packages MonetDB-python2 (Fedora) and monetdb-python2 (Debian/Ubuntu) + have been created for Python 2 integration into MonetDB. + * Tue Jul 19 2016 Stefan Manegold <stefan.maneg...@cwi.nl> - With OID size equal to ABI/word size, mserver5 does not need to print the OID size, anymore. 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 @@ -537,6 +537,8 @@ Ready. [ "bam", "sam_export", "pattern bam.sam_export(output_path:str):void ", "sam_exportf;", "Export results in the bam.export table to a SAM file" ] [ "bam", "seq_char", "command bam.seq_char(ref_pos:int,alg_seq:str,alg_pos:int,alg_cigar:str):str ", "seq_char;", "Calculate the character in the alignment string (alg_str) that is aligned to position 'ref_pos', conforming to the given cigar string" ] [ "bam", "seq_length", "command bam.seq_length(cigar:str):int ", "seq_length;", "Calculate the real length of a DNA sequence, given its CIGAR string." ] +[ "bat", "append", "command bat.append(i:bat[:any_1],u:bat[:any_1],s:bat[:oid],force:bit):bat[:any_1] ", "BKCappend_cand_force_wrap;", "append the content of u with candidate list s to i" ] +[ "bat", "append", "command bat.append(i:bat[:any_1],u:bat[:any_1],s:bat[:oid]):bat[:any_1] ", "BKCappend_cand_wrap;", "append the content of u with candidate list s to i" ] [ "bat", "append", "command bat.append(i:bat[:any_1],u:bat[:any_1],force:bit):bat[:any_1] ", "BKCappend_force_wrap;", "append the content of u to i" ] [ "bat", "append", "command bat.append(i:bat[:any_1],u:any_1,force:bit):bat[:any_1] ", "BKCappend_val_force_wrap;", "append the value u to i" ] [ "bat", "append", "command bat.append(i:bat[:any_1],u:any_1):bat[:any_1] ", "BKCappend_val_wrap;", "append the value u to i" ] @@ -599,7 +601,7 @@ Ready. [ "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 entries in the head column. KNOWN BUG:when 'key' is set to TRUE, this \n\t\tfunction does not automatically eliminate duplicates. " ] +[ "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 @@ -641,6 +641,8 @@ Ready. [ "bam", "sam_export", "pattern bam.sam_export(output_path:str):void ", "sam_exportf;", "Export results in the bam.export table to a SAM file" ] [ "bam", "seq_char", "command bam.seq_char(ref_pos:int,alg_seq:str,alg_pos:int,alg_cigar:str):str ", "seq_char;", "Calculate the character in the alignment string (alg_str) that is aligned to position 'ref_pos', conforming to the given cigar string" ] [ "bam", "seq_length", "command bam.seq_length(cigar:str):int ", "seq_length;", "Calculate the real length of a DNA sequence, given its CIGAR string." ] +[ "bat", "append", "command bat.append(i:bat[:any_1],u:bat[:any_1],s:bat[:oid],force:bit):bat[:any_1] ", "BKCappend_cand_force_wrap;", "append the content of u with candidate list s to i" ] +[ "bat", "append", "command bat.append(i:bat[:any_1],u:bat[:any_1],s:bat[:oid]):bat[:any_1] ", "BKCappend_cand_wrap;", "append the content of u with candidate list s to i" ] [ "bat", "append", "command bat.append(i:bat[:any_1],u:bat[:any_1],force:bit):bat[:any_1] ", "BKCappend_force_wrap;", "append the content of u to i" ] [ "bat", "append", "command bat.append(i:bat[:any_1],u:any_1,force:bit):bat[:any_1] ", "BKCappend_val_force_wrap;", "append the value u to i" ] [ "bat", "append", "command bat.append(i:bat[:any_1],u:any_1):bat[:any_1] ", "BKCappend_val_wrap;", "append the value u to i" ] @@ -705,7 +707,7 @@ Ready. [ "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 entries in the head column. KNOWN BUG:when 'key' is set to TRUE, this \n\t\tfunction does not automatically eliminate duplicates. " ] +[ "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 @@ -19,7 +19,7 @@ int ATOMlen(int id, const void *v); str ATOMname(int id); ptr ATOMnil(int id); int ATOMprint(int id, const void *val, stream *fd); -gdk_return BATappend(BAT *b, BAT *c, bit force); +gdk_return BATappend(BAT *b, BAT *n, BAT *s, bit force); void BATassertProps(BAT *b); atomDesc BATatoms[]; BAT *BATattach(int tt, const char *heapfile, int role); @@ -144,6 +144,7 @@ gdk_return BATimprints(BAT *b); BAT *BATintersectcand(BAT *a, BAT *b); gdk_return BATjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, int nil_matches, BUN estimate); gdk_return BATkey(BAT *b, int onoff); +int BATkeyed(BAT *b); gdk_return BATleftjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, int nil_matches, BUN estimate); void *BATmax(BAT *b, void *aggr); size_t BATmemsize(BAT *b, int dirty); @@ -263,7 +264,7 @@ void *GDKrealloc(void *pold, size_t size void GDKregister(MT_Id pid); gdk_return GDKreleasemmap(void *ptr, size_t size, size_t id, str *msg); gdk_return GDKreleasesem(int sem_id, str *msg); -void GDKreset(int status); +void GDKreset(int status, int exit); void GDKsetenv(str name, str value); void GDKsetmemorylimit(lng nbytes); ssize_t GDKstrFromStr(unsigned char *dst, const unsigned char *src, ssize_t len); @@ -778,6 +779,8 @@ str BATXMLstr2xml(bat *ret, const bat *b str BATXMLxml2str(bat *ret, const bat *bid); str BATXMLxmltext(bat *ret, const bat *bid); str BATXMLxquery(bat *ret, const bat *bid, const char *const *expr); +str BKCappend_cand_force_wrap(bat *r, const bat *bid, const bat *uid, const bat *sid, const bit *force); +str BKCappend_cand_wrap(bat *r, const bat *bid, const bat *uid, const bat *sid); str BKCappend_force_wrap(bat *r, const bat *bid, const bat *uid, const bit *force); str BKCappend_val_force_wrap(bat *r, const bat *bid, const void *u, const bit *force); str BKCappend_val_wrap(bat *r, const bat *bid, const void *u); @@ -2043,6 +2046,7 @@ void freeException(str); void freeInstruction(InstrPtr p); void freeMalBlk(MalBlkPtr mb); void freeModule(Module cur); +void freeModuleList(Module *list); void freeStack(MalStkPtr stk); void freeSymbol(Symbol s); void freeSymbolList(Symbol s); @@ -2077,7 +2081,7 @@ int getIntConstant(MalBlkPtr mb, int val int getLngConstant(MalBlkPtr mb, lng val); MalBlkPtr getMalBlkHistory(MalBlkPtr mb, int idx); lng getMemoryClaim(MalBlkPtr mb, MalStkPtr stk, InstrPtr pci, int i, int flag); -Module getModuleChain(void); +void getModuleList(Module **out, int *length); str getName(const char *nme); str getNameLen(const char *nme, size_t len); int getOidConstant(MalBlkPtr mb, oid val); @@ -2197,6 +2201,7 @@ MT_Lock mal_delayLock; void mal_exit(void); void mal_factory_reset(void) __attribute__((__visibility__("hidden"))); int mal_init(void); +void mal_instruction_reset(void); void mal_linker_reset(void) __attribute__((__visibility__("hidden"))); void mal_module_reset(void) __attribute__((__visibility__("hidden"))); void mal_namespace_reset(void) __attribute__((__visibility__("hidden"))); @@ -2205,6 +2210,7 @@ str mal_quote(const char *msg, size_t si MT_Lock mal_remoteLock; void mal_resource_reset(void) __attribute__((__visibility__("hidden"))); void mal_runtime_reset(void) __attribute__((__visibility__("hidden"))); +str mal_session_uuid; int mal_trace; void mal_unquote(char *msg); str manifoldRef; @@ -2255,12 +2261,11 @@ int mnstr_writeInt_wrap(Stream *S, int * str mnstr_writeIntwrap(void *ret, Stream *S, int *data); int mnstr_write_string(Stream *S, str data); str mnstr_write_stringwrap(void *ret, Stream *S, str *data); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list