Changeset: 400cb105fa55 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=400cb105fa55
Added Files:
        sql/test/BugTracker-2019/Tests/All
        
sql/test/BugTracker-2019/Tests/copy-into-from-stdin-empty-line.Bug-6669.sql
        
sql/test/BugTracker-2019/Tests/copy-into-from-stdin-empty-line.Bug-6669.stable.err
        
sql/test/BugTracker-2019/Tests/copy-into-from-stdin-empty-line.Bug-6669.stable.out
        sql/test/BugTracker-2019/Tests/insert-replica-table.Bug-6684.sql
        sql/test/BugTracker-2019/Tests/insert-replica-table.Bug-6684.stable.err
        sql/test/BugTracker-2019/Tests/subselect-contradiction.Bug-6683.sql
        
sql/test/BugTracker-2019/Tests/subselect-contradiction.Bug-6683.stable.err
        
sql/test/BugTracker-2019/Tests/subselect-contradiction.Bug-6683.stable.out
        sql/test/in-value-list/Tests/All
        sql/test/in-value-list/Tests/various-in-value-list-queries.sql
        sql/test/in-value-list/Tests/various-in-value-list-queries.stable.err
        sql/test/in-value-list/Tests/various-in-value-list-queries.stable.out
Removed Files:
        sql/backends/monet5/prog.c
Modified Files:
        ChangeLog
        MonetDB.spec
        NT/rules.msc
        buildtools/selinux/monetdb.te
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures.stable.out.int128
        clients/Tests/exports.stable.out
        clients/mapiclient/ReadlineTools.c
        clients/mapiclient/dotmonetdb.c
        clients/mapiclient/dump.c
        clients/mapiclient/mclient.1
        clients/mapiclient/mclient.c
        clients/mapiclient/mhelp.c
        clients/mapiclient/msqldump.c
        clients/mapiclient/msqldump.h
        clients/mapilib/mapi.c
        clients/odbc/driver/ODBCUtil.h
        clients/odbc/driver/SQLColumnPrivileges.c
        clients/odbc/driver/SQLColumns.c
        clients/odbc/driver/SQLConnect.c
        clients/odbc/driver/SQLForeignKeys.c
        clients/odbc/driver/SQLPrimaryKeys.c
        clients/odbc/driver/SQLProcedureColumns.c
        clients/odbc/driver/SQLProcedures.c
        clients/odbc/driver/SQLSpecialColumns.c
        clients/odbc/driver/SQLStatistics.c
        clients/odbc/driver/SQLTablePrivileges.c
        clients/odbc/driver/SQLTables.c
        common/options/monet_options.c
        common/stream/stream.c
        common/utils/Makefile.ag
        common/utils/mcrypt.c
        configure.ag
        gdk/ChangeLog
        gdk/ChangeLog.Apr2019
        gdk/Makefile.ag
        gdk/gdk.h
        gdk/gdk_aggr.c
        gdk/gdk_align.c
        gdk/gdk_atomic.h
        gdk/gdk_atoms.c
        gdk/gdk_atoms.h
        gdk/gdk_bat.c
        gdk/gdk_batop.c
        gdk/gdk_bbp.c
        gdk/gdk_bbp.h
        gdk/gdk_calc.c
        gdk/gdk_calc_private.h
        gdk/gdk_delta.c
        gdk/gdk_firstn.c
        gdk/gdk_group.c
        gdk/gdk_hash.c
        gdk/gdk_hash.h
        gdk/gdk_heap.c
        gdk/gdk_imprints.c
        gdk/gdk_join.c
        gdk/gdk_logger.c
        gdk/gdk_logger.h
        gdk/gdk_orderidx.c
        gdk/gdk_posix.c
        gdk/gdk_private.h
        gdk/gdk_qsort.c
        gdk/gdk_qsort_impl.h
        gdk/gdk_select.c
        gdk/gdk_storage.c
        gdk/gdk_system.c
        gdk/gdk_system.h
        gdk/gdk_system_private.h
        gdk/gdk_tm.c
        gdk/gdk_utils.c
        gdk/gdk_utils.h
        gdk/gdk_value.c
        geom/monetdb5/geom.c
        geom/monetdb5/geom.h
        monetdb5/ChangeLog.Apr2019
        monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err
        
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows
        monetdb5/extras/rapi/converters.c.h
        monetdb5/extras/rapi/rapi.c
        monetdb5/mal/mal.c
        monetdb5/mal/mal.h
        monetdb5/mal/mal_atom.c
        monetdb5/mal/mal_authorize.c
        monetdb5/mal/mal_client.c
        monetdb5/mal/mal_client.h
        monetdb5/mal/mal_dataflow.c
        monetdb5/mal/mal_debugger.c
        monetdb5/mal/mal_exception.c
        monetdb5/mal/mal_import.c
        monetdb5/mal/mal_instruction.c
        monetdb5/mal/mal_instruction.h
        monetdb5/mal/mal_interpreter.c
        monetdb5/mal/mal_linker.c
        monetdb5/mal/mal_listing.c
        monetdb5/mal/mal_namespace.c
        monetdb5/mal/mal_parser.c
        monetdb5/mal/mal_profiler.c
        monetdb5/mal/mal_session.c
        monetdb5/modules/atoms/Makefile.ag
        monetdb5/modules/atoms/batxml.c
        monetdb5/modules/atoms/blob.c
        monetdb5/modules/atoms/blob.h
        monetdb5/modules/atoms/color.c
        monetdb5/modules/atoms/color.h
        monetdb5/modules/atoms/identifier.c
        monetdb5/modules/atoms/inet.c
        monetdb5/modules/atoms/json.c
        monetdb5/modules/atoms/json.h
        monetdb5/modules/atoms/mtime.c
        monetdb5/modules/atoms/mtime.h
        monetdb5/modules/atoms/url.c
        monetdb5/modules/atoms/url.h
        monetdb5/modules/atoms/uuid.c
        monetdb5/modules/atoms/xml.c
        monetdb5/modules/atoms/xml.h
        monetdb5/modules/kernel/Tests/status.malC
        monetdb5/modules/kernel/aggr.c
        monetdb5/modules/kernel/alarm.c
        monetdb5/modules/kernel/alarm.mal
        monetdb5/modules/kernel/algebra.c
        monetdb5/modules/kernel/algebra.mal
        monetdb5/modules/kernel/bat5.c
        monetdb5/modules/kernel/batstr.c
        monetdb5/modules/kernel/status.c
        monetdb5/modules/kernel/status.mal
        monetdb5/modules/mal/batcalc.c
        monetdb5/modules/mal/bbp.c
        monetdb5/modules/mal/clients.c
        monetdb5/modules/mal/inspect.c
        monetdb5/modules/mal/mal_io.c
        monetdb5/modules/mal/mal_mapi.c
        monetdb5/modules/mal/mat.c
        monetdb5/modules/mal/mdb.c
        monetdb5/modules/mal/mkey.c
        monetdb5/modules/mal/pcre.c
        monetdb5/modules/mal/querylog.c
        monetdb5/modules/mal/remote.c
        monetdb5/modules/mal/remote.mal
        monetdb5/modules/mal/tablet.c
        monetdb5/modules/mal/tokenizer.c
        monetdb5/modules/mal/wlc.c
        monetdb5/modules/mal/wlc.mal
        monetdb5/optimizer/opt_garbageCollector.c
        monetdb5/optimizer/opt_mergetable.c
        monetdb5/optimizer/opt_prelude.c
        monetdb5/optimizer/opt_prelude.h
        monetdb5/optimizer/opt_querylog.c
        monetdb5/optimizer/opt_support.c
        monetdb5/optimizer/optimizer.mal
        monetdb5/tools/Makefile.ag
        monetdb5/tools/Tests/mserver5--help.stable.err
        monetdb5/tools/Tests/mserver5--help.stable.err.Windows
        rpm.mk.in
        sql/ChangeLog
        sql/ChangeLog.Apr2019
        sql/backends/monet5/Tests/rapi17.stable.out
        sql/backends/monet5/UDF/capi/capi.c
        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/type_conversion.c
        sql/backends/monet5/UDF/udf/udf.c
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/rel_bin.h
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql.h
        sql/backends/monet5/sql_bat2time.c
        sql/backends/monet5/sql_cast.c
        sql/backends/monet5/sql_cast_impl_down_from_flt.h
        sql/backends/monet5/sql_cast_impl_int.h
        sql/backends/monet5/sql_cast_impl_up_to_flt.h
        sql/backends/monet5/sql_cat.c
        sql/backends/monet5/sql_cat.h
        sql/backends/monet5/sql_execute.c
        sql/backends/monet5/sql_gencode.c
        sql/backends/monet5/sql_gencode.h
        sql/backends/monet5/sql_rank.c
        sql/backends/monet5/sql_rank.h
        sql/backends/monet5/sql_rank.mal
        sql/backends/monet5/sql_result.c
        sql/backends/monet5/sql_round_impl.h
        sql/backends/monet5/sql_scenario.c
        sql/backends/monet5/sql_statement.c
        sql/backends/monet5/sql_statement.h
        sql/backends/monet5/sql_upgrades.c
        sql/backends/monet5/sql_user.c
        sql/backends/monet5/sqlcatalog.mal
        sql/backends/monet5/vaults/bam/Tests/query2.2.stable.out
        sql/backends/monet5/vaults/bam/Tests/query2.2.stable.out.int128
        sql/backends/monet5/vaults/bam/bam_db_interface.c
        sql/backends/monet5/vaults/bam/bam_export.c
        sql/backends/monet5/vaults/bam/bam_lib.c
        sql/backends/monet5/vaults/bam/bam_loader.c
        sql/backends/monet5/wlr.c
        sql/backends/monet5/wlr.mal
        sql/common/sql_list.c
        sql/common/sql_string.c
        sql/common/sql_types.c
        sql/include/sql_catalog.h
        sql/include/sql_relation.h
        sql/jdbc/tests/Tests/BugResultSetMetaData_Bug_6183.stable.out
        sql/scripts/75_storagemodel.sql
        sql/server/rel_dump.c
        sql/server/rel_optimizer.c
        sql/server/rel_psm.c
        sql/server/rel_schema.c
        sql/server/rel_select.c
        sql/server/rel_semantic.c
        sql/server/rel_sequence.c
        sql/server/rel_updates.c
        sql/server/sql_atom.c
        sql/server/sql_mvc.c
        sql/server/sql_mvc.h
        sql/server/sql_parser.h
        sql/server/sql_parser.y
        sql/server/sql_partition.c
        sql/server/sql_privileges.c
        sql/server/sql_scan.c
        sql/storage/bat/bat_logger.c
        sql/storage/bat/bat_storage.c
        sql/storage/bat/bat_table.c
        sql/storage/sql_catalog.c
        sql/storage/sql_storage.h
        sql/storage/store.c
        
sql/test/BugDay_2005-10-06_2.9.3/Tests/UNION_JOIN_vs_plain_set_UNION-2.SF-920585.sql
        
sql/test/BugDay_2005-10-06_2.9.3/Tests/foreign_key_in_frontend_crashes_backend.SF-935578.sql
        sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.stable.err
        
sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.stable.out.Windows
        
sql/test/BugTracker-2010/Tests/multiple-common-table-expressions.Bug-2664.sql
        sql/test/BugTracker-2012/Tests/strange_escaping_in_csv.Bug-2133.sql
        
sql/test/BugTracker-2012/Tests/strange_escaping_in_csv.Bug-2133.stable.out
        sql/test/BugTracker-2013/Tests/aggregates-typing-issues.Bug-3277.sql
        sql/test/BugTracker-2013/Tests/median-null.Bug-3280.sql
        sql/test/BugTracker-2014/Tests/null_in_string.Bug-2014.sql
        sql/test/BugTracker-2015/Tests/crash.Bug-3736.stable.out
        sql/test/BugTracker-2015/Tests/is_null_limit.Bug-3684.sql
        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/storagemodel.stable.out
        sql/test/BugTracker-2016/Tests/trigger_bulk.Bug-4045.stable.err
        sql/test/BugTracker-2017/Tests/All
        
sql/test/BugTracker-2017/Tests/crash_correlated_subqueries_in_select.Bug-6254.stable.out
        sql/test/BugTracker-2017/Tests/semijoinunion.Bug-6150.sql
        sql/test/BugTracker-2018/Tests/All
        
sql/test/BugTracker-2018/Tests/count_from_commented_function_signatures.Bug-6542.stable.out
        
sql/test/BugTracker-2018/Tests/groupby_having_orderby_count.Bug-6624.stable.out
        sql/test/BugTracker-2018/Tests/in-subquery-having-Bug-6651.sql
        sql/test/BugTracker-2018/Tests/in-subquery-having-Bug-6651.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.sql
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out
        sql/test/Dependencies/Tests/Dependencies.stable.out
        sql/test/Dependencies/Tests/Dependencies.stable.out.int128
        sql/test/Dependencies/Tests/dependency_loop.stable.out
        sql/test/Dependencies/Tests/dependency_loop.stable.out.int128
        sql/test/Dump/Tests/dump.stable.out
        sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out
        
sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out.int128
        sql/test/Skyserver/Skyserver_import.sql
        sql/test/Tests/rank.stable.out
        sql/test/Tests/systemfunctions.stable.out
        sql/test/Tests/systemfunctions.stable.out.int128
        sql/test/bugs/Tests/innerjoin_multiple-bug-sf-943661.stable.out
        sql/test/copy/Tests/int_parse.sql
        sql/test/copy/Tests/int_parse.stable.err
        sql/test/copy/Tests/int_parse_best.sql
        sql/test/copy/Tests/key_copy.sql
        sql/test/copy/Tests/key_copy.stable.err
        sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64.int128
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64
        sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
        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/group-concat/Tests/groupconcat05.stable.out
        sql/test/json/Tests/jsonvalidity.Bug-3753.stable.out
        sql/test/mergetables/Tests/sqlsmith-apply-outer-join-or.sql
        sql/test/orderidx/Tests/imprints_all_types.stable.out
        sql/test/orderidx/Tests/oidx_all_types.stable.out
        sql/test/pg_regress/Tests/point.stable.out
        sql/test/rank.sql
        sql/test/sys-schema/Tests/check_ForeignKey_referential_integrity.sql
        
sql/test/sys-schema/Tests/check_ForeignKey_referential_integrity.stable.out
        sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade-hge/Tests/dump.stable.out.int128
        sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade/Tests/dump.stable.out
        sql/test/testdb-upgrade/Tests/upgrade.stable.out
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128
        sql/test/testdb/Tests/All
        testing/Mtest.py.in
        testing/malcheck.py
        testing/process.py
        tools/merovingian/client/monetdb.c
        tools/merovingian/daemon/argvcmds.c
        tools/merovingian/daemon/config/monetdbd.service.in
        tools/merovingian/daemon/controlrunner.c
        tools/merovingian/daemon/merovingian.c
        tools/mserver/monet_version.c.in
        tools/mserver/mserver5.1.in
        tools/mserver/mserver5.c
        tools/mserver/shutdowntest.c
Branch: ipv6
Log Message:

Merge with default.


diffs (truncated from 142569 to 300 lines):

diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,2 +1,3 @@
 # ChangeLog file for devel
 # This file is updated with Maddlog
+
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -895,7 +895,10 @@ automatic index management, extensibilit
 accelerators.  It also has an SQL frontend.
 
 This package contains the SELinux policy for running MonetDB under
-control of systemd.
+control of systemd.  There is one tunable parameter, mserver5_can_read_home,
+which can be set using "setsebool -P mserver5_can_read_home=true" to allow
+an mserver5 process started by monetdbd under the control of systemd to
+read files in users' home directories.
 
 %post selinux
 for selinuxvariant in %{selinux_variants}
diff --git a/buildtools/selinux/monetdb.te b/buildtools/selinux/monetdb.te
--- a/buildtools/selinux/monetdb.te
+++ b/buildtools/selinux/monetdb.te
@@ -1,4 +1,4 @@
-policy_module(monetdb, 0.3)
+policy_module(monetdb, 0.4)
 # The above line declares that this file is a SELinux policy file. Its
 # name is monetdb, so the file should be saved as monetdb.te
 
@@ -7,6 +7,7 @@ require {
        type proc_net_t;
        type tmp_t;
        type var_t;
+       type user_home_t;
        class dir { read };
        class fd { use };
        class fifo_file { getattr read write };
@@ -119,4 +120,9 @@ manage_sock_files_pattern(mserver5_t, ms
 allow mserver5_t monetdbd_t:fifo_file { read write getattr };
 allow mserver5_t monetdbd_t:unix_stream_socket { read write getopt shutdown };
 allow mserver5_t var_t:dir { read };
+gen_tunable(mserver5_can_read_home, false)
+tunable_policy(`mserver5_can_read_home', `
+    userdom_search_user_home_dirs(mserver5_t)
+    allow mserver5_t user_home_t:file read_file_perms;
+')
 allow monetdbd_t mserver5_t:unix_stream_socket { connectto };
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
@@ -513,9 +513,7 @@ Ready.
 [ "aggr",      "variancep",    "command aggr.variancep(b:bat[:sht], 
g:bat[:oid], e:bat[:any_1]):bat[:dbl] ",   "AGGRvariancep3_dbl;",  "Grouped 
tail variance (population/biased) on sht"      ]
 [ "aggr",      "variancep",    "command aggr.variancep(b:bat[:any_2]):dbl ",   
"ALGvariancep;",        "Gives the variance of all tail values" ]
 [ "alarm",     "ctime",        "unsafe command alarm.ctime():str ",    
"ALARMctime;",  "Return the current time as a C-time string."   ]
-[ "alarm",     "epilogue",     "command alarm.epilogue():void ",       
"ALARMepilogue;",       "Finalize alarm module."        ]
 [ "alarm",     "epoch",        "unsafe command alarm.epoch():int ",    
"ALARMepoch;",  "Return the current time as UNIX epoch."        ]
-[ "alarm",     "prelude",      "command alarm.prelude():void ",        
"ALARMprelude;",        "Initialize alarm module."      ]
 [ "alarm",     "sleep",        "unsafe command alarm.sleep(secs:int):void ",   
"ALARMsleep;",  "Sleep a few seconds"   ]
 [ "alarm",     "time", "unsafe command alarm.time():int ",     "ALARMtime;",   
"Return time in milliseconds."  ]
 [ "alarm",     "usec", "unsafe command alarm.usec():lng ",     "ALARMusec;",   
"Return time in microseconds."  ]
@@ -11892,9 +11890,9 @@ Ready.
 [ "sqlcatalog",        "revoke_function",      "pattern 
sqlcatalog.revoke_function(sname:str, fcnid:int, grantee:str, privs:int, 
grant:int, grantor:int):void ",       "SQLrevoke_function;",  "Catalog 
operation revoke_function"     ]
 [ "sqlcatalog",        "revoke_roles", "pattern 
sqlcatalog.revoke_roles(sname:str, auth:str, grantor:int, admin:int):void ",   
"SQLrevoke_roles;",     "Catalog operation revoke_roles"        ]
 [ "status",    "batStatistics",        "command status.batStatistics() 
(X_0:bat[:str], X_1:bat[:str]) ",       "SYSgdkEnv;",   "Show distribution of 
bats by kind"     ]
-[ "status",    "cpuStatistics",        "command status.cpuStatistics() 
(X_0:bat[:str], X_1:bat[:int]) ",       "SYScpuStatistics;",    "Global cpu 
usage information"  ]
+[ "status",    "cpuStatistics",        "command status.cpuStatistics() 
(X_0:bat[:str], X_1:bat[:lng]) ",       "SYScpuStatistics;",    "Global cpu 
usage information"  ]
 [ "status",    "getThreads",   "command status.getThreads() (X_0:bat[:int], 
X_1:bat[:str]) ",  "SYSgdkThread;",        "Produce overview of active threads" 
   ]
-[ "status",    "ioStatistics", "command status.ioStatistics() (X_0:bat[:str], 
X_1:bat[:int]) ",        "SYSioStatistics;",     "Global IO activity 
information"        ]
+[ "status",    "ioStatistics", "command status.ioStatistics() (X_0:bat[:str], 
X_1:bat[:lng]) ",        "SYSioStatistics;",     "Global IO activity 
information"        ]
 [ "status",    "memStatistics",        "command status.memStatistics() 
(X_0:bat[:str], X_1:bat[:lng]) ",       "SYSmemStatistics;",    "Global memory 
usage information"       ]
 [ "status",    "memUsage",     "command status.memUsage(minsize:lng) 
(X_0:bat[:str], X_1:bat[:lng]) ", "SYSmem_usage;",        "Get a split-up of 
how much memory blocks are in use"   ]
 [ "status",    "mem_cursize",  "command status.mem_cursize():lng ",    
"SYSgetmem_cursize;",   "The amount of physical swapspace in KB that is 
currently in use"       ]
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
@@ -617,9 +617,7 @@ Ready.
 [ "aggr",      "variancep",    "command aggr.variancep(b:bat[:sht], 
g:bat[:oid], e:bat[:any_1]):bat[:dbl] ",   "AGGRvariancep3_dbl;",  "Grouped 
tail variance (population/biased) on sht"      ]
 [ "aggr",      "variancep",    "command aggr.variancep(b:bat[:any_2]):dbl ",   
"ALGvariancep;",        "Gives the variance of all tail values" ]
 [ "alarm",     "ctime",        "unsafe command alarm.ctime():str ",    
"ALARMctime;",  "Return the current time as a C-time string."   ]
-[ "alarm",     "epilogue",     "command alarm.epilogue():void ",       
"ALARMepilogue;",       "Finalize alarm module."        ]
 [ "alarm",     "epoch",        "unsafe command alarm.epoch():int ",    
"ALARMepoch;",  "Return the current time as UNIX epoch."        ]
-[ "alarm",     "prelude",      "command alarm.prelude():void ",        
"ALARMprelude;",        "Initialize alarm module."      ]
 [ "alarm",     "sleep",        "unsafe command alarm.sleep(secs:int):void ",   
"ALARMsleep;",  "Sleep a few seconds"   ]
 [ "alarm",     "time", "unsafe command alarm.time():int ",     "ALARMtime;",   
"Return time in milliseconds."  ]
 [ "alarm",     "usec", "unsafe command alarm.usec():lng ",     "ALARMusec;",   
"Return time in microseconds."  ]
@@ -16319,9 +16317,9 @@ Ready.
 [ "sqlcatalog",        "revoke_function",      "pattern 
sqlcatalog.revoke_function(sname:str, fcnid:int, grantee:str, privs:int, 
grant:int, grantor:int):void ",       "SQLrevoke_function;",  "Catalog 
operation revoke_function"     ]
 [ "sqlcatalog",        "revoke_roles", "pattern 
sqlcatalog.revoke_roles(sname:str, auth:str, grantor:int, admin:int):void ",   
"SQLrevoke_roles;",     "Catalog operation revoke_roles"        ]
 [ "status",    "batStatistics",        "command status.batStatistics() 
(X_0:bat[:str], X_1:bat[:str]) ",       "SYSgdkEnv;",   "Show distribution of 
bats by kind"     ]
-[ "status",    "cpuStatistics",        "command status.cpuStatistics() 
(X_0:bat[:str], X_1:bat[:int]) ",       "SYScpuStatistics;",    "Global cpu 
usage information"  ]
+[ "status",    "cpuStatistics",        "command status.cpuStatistics() 
(X_0:bat[:str], X_1:bat[:lng]) ",       "SYScpuStatistics;",    "Global cpu 
usage information"  ]
 [ "status",    "getThreads",   "command status.getThreads() (X_0:bat[:int], 
X_1:bat[:str]) ",  "SYSgdkThread;",        "Produce overview of active threads" 
   ]
-[ "status",    "ioStatistics", "command status.ioStatistics() (X_0:bat[:str], 
X_1:bat[:int]) ",        "SYSioStatistics;",     "Global IO activity 
information"        ]
+[ "status",    "ioStatistics", "command status.ioStatistics() (X_0:bat[:str], 
X_1:bat[:lng]) ",        "SYSioStatistics;",     "Global IO activity 
information"        ]
 [ "status",    "memStatistics",        "command status.memStatistics() 
(X_0:bat[:str], X_1:bat[:lng]) ",       "SYSmemStatistics;",    "Global memory 
usage information"       ]
 [ "status",    "memUsage",     "command status.memUsage(minsize:lng) 
(X_0:bat[:str], X_1:bat[:lng]) ", "SYSmem_usage;",        "Get a split-up of 
how much memory blocks are in use"   ]
 [ "status",    "mem_cursize",  "command status.mem_cursize():lng ",    
"SYSgetmem_cursize;",   "The amount of physical swapspace in KB that is 
currently in use"       ]
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
@@ -182,16 +182,14 @@ void BATtseqbase(BAT *b, oid o);
 void BATundo(BAT *b);
 BAT *BATunique(BAT *b, BAT *s);
 BBPrec *BBP[N_BBPINIT];
-void BBPaddfarm(const char *dirname, int rolemask);
+gdk_return BBPaddfarm(const char *dirname, int rolemask);
 void BBPclear(bat bid);
 BAT *BBPdescriptor(bat b);
 int BBPfix(bat b);
-int BBPin;
 bat BBPindex(const char *nme);
 void BBPkeepref(bat i);
 bat BBPlimit;
 void BBPlock(void);
-int BBPout;
 BAT *BBPquickdesc(bat b, bool delaccess);
 int BBPreclaim(BAT *b);
 int BBPrelease(bat b);
@@ -211,7 +209,6 @@ BAT *COLcopy(BAT *b, int tt, bool writab
 BAT *COLnew(oid hseq, int tltype, BUN capacity, role_t role) 
__attribute__((__warn_unused_result__));
 size_t GDK_mem_maxsize;
 size_t GDK_vm_maxsize;
-int GDK_vm_trim;
 gdk_return GDKanalyticalavg(BAT *r, BAT *b, BAT *s, BAT *e, int tpe);
 gdk_return GDKanalyticalcount(BAT *r, BAT *b, BAT *s, BAT *e, const bit 
*restrict ignore_nils, int tpe);
 gdk_return GDKanalyticaldiff(BAT *r, BAT *b, BAT *p, int tpe);
@@ -233,6 +230,7 @@ size_t GDKbatread(char *src, BAT **bat, 
 gdk_return GDKchangesemval(int sem_id, int number, int change);
 gdk_return GDKchangesemval_timeout(int sem_id, int number, int change, int 
timeout_mseconds, bool *succeed);
 void GDKclrerr(void);
+gdk_return GDKcopyenv(BAT **key, BAT **val, bool writable);
 gdk_return GDKcreatedir(const char *nme);
 gdk_return GDKcreatesem(int id, int count, int *semid);
 int GDKdebug;
@@ -248,16 +246,15 @@ bit GDKfataljumpenable;
 str GDKfatalmsg;
 char *GDKfilepath(int farmid, const char *dir, const char *nme, const char 
*ext);
 void GDKfree(void *blk);
-char *GDKgetenv(const char *name);
+const char *GDKgetenv(const char *name);
 int GDKgetenv_int(const char *name, int def);
 bool GDKgetenv_istext(const char *name, const char *text);
 bool GDKgetenv_istrue(const char *name);
 bool GDKgetenv_isyes(const char *name);
 gdk_return GDKgetsem(int sem_id, int count, int *semid);
 gdk_return GDKgetsemval(int sem_id, int number, int *semval);
-bool GDKinit(opt *set, int setlen);
+gdk_return GDKinit(opt *set, int setlen);
 void *GDKinitmmap(size_t id, size_t size, size_t *return_size);
-BAT *GDKkey;
 ATOMIC_TYPE volatile GDKlockcnt;
 ATOMIC_TYPE volatile GDKlockcontentioncnt;
 MT_Lock *volatile GDKlocklist;
@@ -277,9 +274,11 @@ void *GDKrealloc(void *pold, size_t size
 void GDKregister(MT_Id pid);
 gdk_return GDKreleasemmap(void *ptr, size_t size, size_t id);
 gdk_return GDKreleasesem(int sem_id);
-void GDKreset(int status, int exit);
+void GDKreset(int status);
+void GDKsetdebug(int debug);
 gdk_return GDKsetenv(const char *name, const char *value);
 void GDKsetmallocsuccesscount(lng count);
+void GDKsetverbose(int verbosity);
 ssize_t GDKstrFromStr(unsigned char *restrict dst, const unsigned char 
*restrict src, ssize_t len);
 str GDKstrdup(const char *s) __attribute__((__warn_unused_result__));
 str GDKstrndup(const char *s, size_t n) 
__attribute__((__warn_unused_result__));
@@ -287,7 +286,7 @@ void GDKsyserror(_In_z_ _Printf_format_s
 size_t GDKuniqueid(size_t offset);
 gdk_return GDKupgradevarheap(BAT *b, var_t v, bool copyall, bool mayshare) 
__attribute__((__warn_unused_result__));
 lng GDKusec(void);
-BAT *GDKval;
+int GDKverbose;
 const char *GDKversion(void);
 size_t GDKvm_cursize(void);
 void *GDKzalloc(size_t size) __attribute__((__malloc__)) 
__attribute__((__alloc_size__(1))) __attribute__((__warn_unused_result__));
@@ -303,7 +302,7 @@ size_t HEAPvmsize(Heap *h);
 void IMPSdestroy(BAT *b);
 lng IMPSimprintsize(BAT *b);
 int MT_check_nr_cores(void);
-int MT_create_thread(MT_Id *t, void (*function)(void *), void *arg, enum 
MT_thr_detach d);
+int MT_create_thread(MT_Id *t, void (*function)(void *), void *arg, enum 
MT_thr_detach d, const char *threadname);
 void MT_exiting_thread(void);
 MT_Id MT_getpid(void);
 size_t MT_getrss(void);
@@ -314,6 +313,11 @@ void *MT_mmap(const char *path, int mode
 int MT_munmap(void *p, size_t len);
 bool MT_path_absolute(const char *path);
 void MT_sleep_ms(unsigned int ms);
+void *MT_thread_getdata(void);
+const char *MT_thread_getname(void);
+bool MT_thread_init(void);
+void MT_thread_setdata(void *data);
+void MT_thread_setname(const char *name);
 void OIDXdestroy(BAT *b);
 ssize_t OIDfromStr(const char *src, size_t *len, oid **dst, bool external);
 ssize_t OIDtoStr(str *dst, size_t *len, const oid *src, bool external);
@@ -324,6 +328,7 @@ void PROPdestroy(BAT *b);
 BUN SORTfnd(BAT *b, const void *v);
 BUN SORTfndfirst(BAT *b, const void *v);
 BUN SORTfndlast(BAT *b, const void *v);
+MT_Id THRcreate(void (*f)(void *), void *arg, enum MT_thr_detach d, const char 
*name);
 void *THRdata[THREADDATA];
 void THRdel(Thread t);
 Thread THRget(int tid);
@@ -697,13 +702,9 @@ str AGGRsum3_sht(bat *retval, const bat 
 str AGGRvariance3_dbl(bat *retval, const bat *bid, const bat *gid, const bat 
*eid);
 str AGGRvariancep3_dbl(bat *retval, const bat *bid, const bat *gid, const bat 
*eid);
 str ALARMctime(str *res);
-str ALARMepilogue(void *ret);
 str ALARMepoch(int *res);
-str ALARMprelude(void *ret);
-str ALARMsetalarm(void *res, int *secs, str *action);
 str ALARMsleep(void *res, int *secs);
 str ALARMtime(int *res);
-str ALARMtimers(bat *res, bat *actions);
 str ALARMusec(lng *ret);
 str ALGbandjoin(bat *r1, bat *r2, const bat *lid, const bat *rid, const bat 
*slid, const bat *srid, const void *low, const void *high, const bit *li, const 
bit *hi, const lng *estimate);
 str ALGcard(lng *result, const bat *bid);
@@ -2188,6 +2189,7 @@ str expandRef;
 str exportOperationRef;
 str export_tableRef;
 str fcnDefinition(MalBlkPtr mb, InstrPtr p, str s, int flg, str base, size_t 
len);
+str fetchRef;
 int findGDKtype(int type);
 Module findModule(Module scope, str name);
 str findRef;
@@ -2373,7 +2375,7 @@ MT_Lock mal_contextLock;
 MT_Lock mal_copyLock;
 void mal_dataflow_reset(void) __attribute__((__visibility__("hidden")));
 MT_Lock mal_delayLock;
-void mal_exit(void);
+void mal_exit(int status);
 void mal_factory_reset(void) __attribute__((__visibility__("hidden")));
 int mal_init(void);
 void mal_instruction_reset(void);
@@ -2452,7 +2454,7 @@ char *msab_registerStop(void);
 char *msab_retreatScenario(const char *lang);
 char *msab_serialise(char **ret, const sabdb *db);
 char *msab_wildRetreat(void);
-void mserver_reset(int exit);
+void mserver_reset(void);
 str mtimeRef;
 str mulRef;
 str multicolumnRef;
diff --git a/clients/mapiclient/ReadlineTools.c 
b/clients/mapiclient/ReadlineTools.c
--- a/clients/mapiclient/ReadlineTools.c
+++ b/clients/mapiclient/ReadlineTools.c
@@ -321,18 +321,25 @@ init_readline(Mapi mid, char *lang, int 
        }
 
        if (save_history) {
+               int len;
 #ifndef NATIVE_WIN32
                if (getenv("HOME") != NULL) {
-                       snprintf(_history_file, FILENAME_MAX,
+                       len = snprintf(_history_file, FILENAME_MAX,
                                 "%s/.mapiclient_history_%s",
                                 getenv("HOME"), language);
-                       _save_history = 1;
+                       if (len == -1 || len >= FILENAME_MAX)
+                               fprintf(stderr, "Warning: history filename path 
is too large\n");
+                       else
+                               _save_history = 1;
                }
 #else
-               snprintf(_history_file, FILENAME_MAX,
+               len = snprintf(_history_file, FILENAME_MAX,
                         "%s%c_mapiclient_history_%s",
                         mo_find_option(NULL, 0, "prefix"), DIR_SEP, language);
-               _save_history = 1;
+               if (len == -1 || len >= FILENAME_MAX)
+                       fprintf(stderr, "Warning: history filename path is too 
large\n");
+               else
+                       _save_history = 1;
 #endif
                if (_save_history) {
                        FILE *f;
diff --git a/clients/mapiclient/dotmonetdb.c b/clients/mapiclient/dotmonetdb.c
--- a/clients/mapiclient/dotmonetdb.c
+++ b/clients/mapiclient/dotmonetdb.c
@@ -15,18 +15,22 @@ parse_dotmonetdb(char **user, char **pas
 {
        char *cfile;
        FILE *config = NULL;
-       char buf[1024];
+       char buf[FILENAME_MAX];
 
        if ((cfile = getenv("DOTMONETDBFILE")) == NULL) {
                /* no environment variable: use a default */
                if ((config = fopen(".monetdb", "r")) == NULL) {
                        if ((cfile = getenv("HOME")) != NULL) {
-                               snprintf(buf, sizeof(buf), "%s%c.monetdb", 
cfile, DIR_SEP);
-                               config = fopen(buf, "r");
-                               if (config)
-                                       cfile = strdup(buf);
-                               else
+                               int len = snprintf(buf, sizeof(buf), 
"%s%c.monetdb", cfile, DIR_SEP);
+                               if (len == -1 || len >= FILENAME_MAX) {
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to