Changeset: 24675ca9ea05 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=24675ca9ea05 Added Files: ChangeLog.Nov2019 buildtools/ChangeLog.Nov2019 clients/ChangeLog.Nov2019 clients/mapilib/ChangeLog.Nov2019 common/stream/ChangeLog.Nov2019 gdk/ChangeLog.Nov2019 geom/ChangeLog.Nov2019 monetdb5/ChangeLog.Nov2019 sql/ChangeLog.Nov2019 sql/jdbc/tests/Tests/JdbcClient_create_tables.sql sql/jdbc/tests/Tests/JdbcClient_drop_tables.sql sql/jdbc/tests/Tests/JdbcClient_inserts_selects.sql sql/test/BugTracker-2019/Tests/cte-union.Bug-6755.sql sql/test/BugTracker-2019/Tests/cte-union.Bug-6755.stable.err sql/test/BugTracker-2019/Tests/cte-union.Bug-6755.stable.out sql/test/BugTracker-2019/Tests/merge-table-limit.Bug-6756.sql sql/test/BugTracker-2019/Tests/merge-table-limit.Bug-6756.stable.err sql/test/BugTracker-2019/Tests/merge-table-limit.Bug-6756.stable.out testing/ChangeLog.Nov2019 tools/merovingian/ChangeLog.Nov2019 Removed Files: sql/jdbc/tests/JdbcClient_create_tables.sql sql/jdbc/tests/JdbcClient_inserts_selects.sql Modified Files: .hgtags CMakeLists.txt MonetDB.spec NT/monetdb_config.h.in NT/rules.msc clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out clients/mapiclient/mclient.c clients/mapiclient/mhelp.c clients/mapilib/mapi.rc clients/odbc/driver/driver.rc clients/odbc/winsetup/setup.rc configure.ag embedded/CMakeLists.txt gdk/ChangeLog gdk/gdk.h gdk/gdk_aggr.c gdk/gdk_align.c gdk/gdk_analytic_func.c gdk/gdk_bat.c gdk/gdk_batop.c gdk/gdk_calc.c gdk/gdk_calc.h gdk/gdk_calc_compare.h gdk/gdk_calc_private.h gdk/gdk_cand.c gdk/gdk_cand.h gdk/gdk_cross.c gdk/gdk_firstn.c gdk/gdk_group.c gdk/gdk_hash.c gdk/gdk_join.c gdk/gdk_logger.c gdk/gdk_private.h gdk/gdk_project.c gdk/gdk_search.c gdk/gdk_select.c gdk/gdk_string.c gdk/gdk_system.c gdk/gdk_unique.c gdk/gdk_utils.c gdk/libbat.rc monetdb5/ChangeLog monetdb5/mal/Tests/tst670.stable.err monetdb5/mal/mal_client.c monetdb5/mal/mal_debugger.c monetdb5/mal/mal_interpreter.c monetdb5/modules/atoms/batxml.c monetdb5/modules/atoms/json.c monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/batmmath.c monetdb5/modules/mal/00_batcalc_hge.mal monetdb5/modules/mal/00_batcalc_hge.mal.sh monetdb5/modules/mal/01_batcalc.mal monetdb5/modules/mal/01_batcalc.mal.sh monetdb5/modules/mal/01_calc.mal monetdb5/modules/mal/01_calc.mal.sh monetdb5/modules/mal/batcalc.c monetdb5/modules/mal/calc.c monetdb5/modules/mal/clients.c monetdb5/modules/mal/mal_io.c monetdb5/modules/mal/mal_mapi.c monetdb5/modules/mal/mat.c monetdb5/modules/mal/orderidx.c monetdb5/modules/mal/pcre.c monetdb5/modules/mal/projectionpath.c monetdb5/modules/mal/querylog.c monetdb5/modules/mal/remote.c monetdb5/modules/mal/sysmon.c monetdb5/modules/mal/tablet.c monetdb5/modules/mal/wlc.c monetdb5/optimizer/opt_mergetable.c monetdb5/optimizer/opt_wlc.c monetdb5/tools/libmonetdb5.rc sql/ChangeLog sql/backends/monet5/sql.c sql/backends/monet5/sql.h sql/backends/monet5/sql.mal sql/backends/monet5/sql_generator.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/wlr.c sql/common/sql_types.c sql/jdbc/tests/Tests/Test_JdbcClient.SQL.bat sql/jdbc/tests/Tests/Test_JdbcClient.SQL.sh sql/jdbc/tests/Tests/Test_JdbcClient.stable.out sql/scripts/25_debug.sql sql/server/rel_optimizer.c sql/server/rel_psm.c sql/server/rel_select.c sql/storage/sql_storage.h sql/storage/store.c sql/test/BugDay_2005-11-09_2.9.3/Tests/hang_on_copy_into.SF-1100504.stable.err sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out sql/test/BugTracker-2010/Tests/incomplete-utf8-sequence.Bug-2575.stable.err sql/test/BugTracker-2015/Tests/backslash_predecing_separator.Bug-3775.stable.err sql/test/BugTracker-2017/Tests/sqlitelogictest-comparisons-between-floating-points-and-NULL.Bug-6496.sql sql/test/BugTracker-2017/Tests/sqlitelogictest-comparisons-between-floating-points-and-NULL.Bug-6496.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-algebra-rangejoin-undefined.Bug-6610.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-having-in-cast.Bug-6561.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-having-not-null-not-in.Bug-6557.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-having-not-null-not-in.Bug-6557.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-wrong-select-not-between.Bug-6511.stable.out sql/test/BugTracker-2019/Tests/All sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out sql/test/BugTracker/Tests/authorization.SF-1430616.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/analytics/Tests/analytics09.sql sql/test/analytics/Tests/analytics09.stable.out sql/test/copy/Tests/columns.stable.err sql/test/copy/Tests/incorrect_columns.stable.out 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-chain/Tests/upgrade.stable.out.powerpc64.int128 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/subquery/Tests/correlated.stable.err sql/test/subquery/Tests/subquery.sql sql/test/subquery/Tests/subquery.stable.err sql/test/subquery/Tests/subquery.stable.out sql/test/sys-schema/Tests/systemfunctions.stable.out sql/test/sys-schema/Tests/systemfunctions.stable.out.int128 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/wlcr/Tests/All sql/test/wlcr/Tests/wlc01.py sql/test/wlcr/Tests/wlc01.stable.out sql/test/wlcr/Tests/wlc100.py sql/test/wlcr/Tests/wlc100.stable.out sql/test/wlcr/Tests/wlc20.py sql/test/wlcr/Tests/wlc20.stable.out sql/test/wlcr/Tests/wlc21.py sql/test/wlcr/Tests/wlc21.stable.out sql/test/wlcr/Tests/wlc30.py sql/test/wlcr/Tests/wlc30.stable.out sql/test/wlcr/Tests/wlc40.py sql/test/wlcr/Tests/wlc40.stable.out sql/test/wlcr/Tests/wlc50.py sql/test/wlcr/Tests/wlc50.stable.out sql/test/wlcr/Tests/wlc70.py sql/test/wlcr/Tests/wlc70.stable.out sql/test/wlcr/Tests/wlr01.py sql/test/wlcr/Tests/wlr01.stable.out sql/test/wlcr/Tests/wlr100.py sql/test/wlcr/Tests/wlr100.stable.out sql/test/wlcr/Tests/wlr20.py sql/test/wlcr/Tests/wlr20.stable.out sql/test/wlcr/Tests/wlr30.py sql/test/wlcr/Tests/wlr30.stable.out sql/test/wlcr/Tests/wlr40.py sql/test/wlcr/Tests/wlr50.py sql/test/wlcr/Tests/wlr50.stable.out sql/test/wlcr/Tests/wlr70.py sql/test/wlcr/Tests/wlr70.stable.out testing/Mtest.py.in testing/exportutils.py tools/merovingian/ChangeLog tools/mserver/mserver5.c vertoo.data Branch: cmake-monetdblite Log Message:
Merge with cmake-fun diffs (truncated from 285245 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -736,3 +736,4 @@ a6674f7048a13fe7dc53995a4f723d33a34bce23 6566d90185b83ed95129db9ea68baf52f2de5cc7 Apr2019_11 a6674f7048a13fe7dc53995a4f723d33a34bce23 Apr2019_SP1_release 6566d90185b83ed95129db9ea68baf52f2de5cc7 Apr2019_SP1_release +d4c1a8c3cbcd965169f1836eaa635101436db81c Nov2019_root diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,7 +16,7 @@ endif() # Change these variables between releases set(MONETDB_VERSION_MAJOR "11") -set(MONETDB_VERSION_MINOR "34") +set(MONETDB_VERSION_MINOR "36") set(MONETDB_VERSION_PATCH "0") set(MONETDB_VERSION "${MONETDB_VERSION_MAJOR}.${MONETDB_VERSION_MINOR}.${MONETDB_VERSION_PATCH}") diff --git a/ChangeLog b/ChangeLog.Nov2019 copy from ChangeLog copy to ChangeLog.Nov2019 diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -1,5 +1,5 @@ %global name MonetDB -%global version 11.34.0 +%global version 11.36.0 %{!?buildno: %global buildno %(date +%Y%m%d)} # Use bcond_with to add a --with option; i.e., "without" is default. 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 @@ -662,7 +662,7 @@ #define PACKAGE_URL "https://www.monetdb.org/" /* Define to the version of this package. */ -#define PACKAGE_VERSION "11.34.0" +#define PACKAGE_VERSION "11.36.0" /* Path separator */ #define PATH_SEP ';' diff --git a/NT/rules.msc b/NT/rules.msc --- a/NT/rules.msc +++ b/NT/rules.msc @@ -6,7 +6,7 @@ # # Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V. -VERSION=11.34.0 +VERSION=11.36.0 # ^^^^^^ # Maintained via vertoo. Please don't modify by hand! # Contact monetdb-develop...@lists.sourceforge.net for details and/or assistance. diff --git a/buildtools/ChangeLog b/buildtools/ChangeLog.Nov2019 copy from buildtools/ChangeLog copy to buildtools/ChangeLog.Nov2019 diff --git a/clients/ChangeLog b/clients/ChangeLog.Nov2019 copy from clients/ChangeLog copy to clients/ChangeLog.Nov2019 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 @@ -6117,14 +6117,14 @@ stdout of test 'MAL-signatures` in direc [ "batcalc", "avg", "pattern batcalc.avg(b:bat[:sht], s:bat[:oid], scale:int):dbl ", "CMDcalcavg;", "average of non-nil values of B" ] [ "batcalc", "avg", "pattern batcalc.avg(b:bat[:sht], scale:int) (X_0:dbl, X_1:lng) ", "CMDcalcavg;", "average and number of non-nil values of B" ] [ "batcalc", "avg", "pattern batcalc.avg(b:bat[:sht], scale:int):dbl ", "CMDcalcavg;", "average of non-nil values of B with candidates list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:any_1, s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:bat[:any_1], s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:bat[:any_1], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:any_1, s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:bat[:any_1], s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:bat[:any_1], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:any_1, s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:bat[:any_1], s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:bat[:any_1], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:any_1, s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:bat[:any_1], s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:bat[:any_1], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] [ "batcalc", "bit", "pattern batcalc.bit(b:bat[:bit]):bat[:bit] ", "CMDconvertsignal_bit;", "cast from bit to bit, signal error on overflow" ] [ "batcalc", "bit", "pattern batcalc.bit(b:bat[:bit], s:bat[:oid]):bat[:bit] ", "CMDconvertsignal_bit;", "cast from bit to bit with candidates list, signal error on overflow" ] [ "batcalc", "bit", "pattern batcalc.bit(b:bat[:bte]):bat[:bit] ", "CMDconvertsignal_bit;", "cast from bte to bit, signal error on overflow" ] @@ -10066,7 +10066,7 @@ stdout of test 'MAL-signatures` in direc [ "calc", "and", "pattern calc.and(v1:int, v2:int):int ", "CMDvarAND;", "Return V1 AND V2" ] [ "calc", "and", "pattern calc.and(v1:lng, v2:lng):lng ", "CMDvarAND;", "Return V1 AND V2" ] [ "calc", "and", "pattern calc.and(v1:sht, v2:sht):sht ", "CMDvarAND;", "Return V1 AND V2" ] -[ "calc", "between", "pattern calc.between(b:any_1, lo:any_1, hi:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit):bit ", "CMDvarBETWEEN;", "B between LO and HI inclusive" ] +[ "calc", "between", "pattern calc.between(b:any_1, lo:any_1, hi:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bit ", "CMDvarBETWEEN;", "B between LO and HI inclusive" ] [ "calc", "bit", "pattern calc.bit(v:bit):bit ", "CMDvarCONVERT;", "Cast VALUE to bit" ] [ "calc", "bit", "pattern calc.bit(v:bte):bit ", "CMDvarCONVERT;", "Cast VALUE to bit" ] [ "calc", "bit", "pattern calc.bit(v:dbl):bit ", "CMDvarCONVERT;", "Cast VALUE to bit" ] @@ -11723,6 +11723,7 @@ stdout of test 'MAL-signatures` in direc [ "sql", "resultSet", "unsafe pattern sql.resultSet(tbl:bat[:str], attr:bat[:str], tpe:bat[:str], len:bat[:int], scale:bat[:int], cols:any...):int ", "mvc_row_result_wrap;", "Prepare a table result set for the client front-end" ] [ "sql", "resultSet", "unsafe pattern sql.resultSet(tbl:str, attr:str, tpe:str, len:int, scale:int, eclass:int, val:any):int ", "mvc_scalar_value_wrap;", "Prepare a table result set for the client front-end." ] [ "sql", "resultSet", "unsafe pattern sql.resultSet(tbl:bat[:str], attr:bat[:str], tpe:bat[:str], len:bat[:int], scale:bat[:int], cols:bat[:any]...):int ", "mvc_table_result_wrap;", "Prepare a table result set for the client in default CSV format" ] +[ "sql", "resume_log_flushing", "command sql.resume_log_flushing():void ", "SQLresume_log_flushing;", "Resume WAL log flushing" ] [ "sql", "reuse", "pattern sql.reuse(sch:str, tbl:str):void ", "SQLreuse;", "Consolidate the deletion table over all columns reusing deleted slots" ] [ "sql", "round", "command sql.round(v:bte, d:int, s:int, r:bte):bte ", "bte_round_wrap;", "round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot)" ] [ "sql", "round", "command sql.round(v:dbl, r:bte):dbl ", "dbl_round_wrap;", "round off the floating point v to r digits behind the dot (if r < 0, before the dot)" ] @@ -11758,6 +11759,7 @@ stdout of test 'MAL-signatures` in direc [ "sql", "sum", "pattern sql.sum(b:int, s:lng, e:lng):lng ", "SQLsum;", "return the sum of groups" ] [ "sql", "sum", "pattern sql.sum(b:lng, s:lng, e:lng):lng ", "SQLsum;", "return the sum of groups" ] [ "sql", "sum", "pattern sql.sum(b:sht, s:lng, e:lng):lng ", "SQLsum;", "return the sum of groups" ] +[ "sql", "suspend_log_flushing", "command sql.suspend_log_flushing():void ", "SQLsuspend_log_flushing;", "Suspend WAL log flushing" ] [ "sql", "sysmon_pause", "pattern sql.sysmon_pause(tag:int):void ", "SYSMONpause;", "" ] [ "sql", "sysmon_pause", "pattern sql.sysmon_pause(tag:lng):void ", "SYSMONpause;", "" ] [ "sql", "sysmon_pause", "pattern sql.sysmon_pause(tag:sht):void ", "SYSMONpause;", "" ] 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 @@ -8651,22 +8651,14 @@ stdout of test 'MAL-signatures` in direc [ "batcalc", "avg", "pattern batcalc.avg(b:bat[:sht], s:bat[:oid], scale:int):dbl ", "CMDcalcavg;", "average of non-nil values of B" ] [ "batcalc", "avg", "pattern batcalc.avg(b:bat[:sht], scale:int) (X_0:dbl, X_1:lng) ", "CMDcalcavg;", "average and number of non-nil values of B" ] [ "batcalc", "avg", "pattern batcalc.avg(b:bat[:sht], scale:int):dbl ", "CMDcalcavg;", "average of non-nil values of B with candidates list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:any_1, s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:bat[:any_1], s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:bat[:any_1], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:any_1, s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:bat[:any_1], s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:bat[:any_1], sym:bit, linc:bit, hinc:bit, nils_false:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:hge], lo:bat[:hge], hi:bat[:hge]):bat[:bit] ", "CMDbatBETWEEN;", "B between LO and HI inclusive, nil border is (minus) infinity" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:hge], lo:bat[:hge], hi:bat[:hge], s:bat[:oid]):bat[:bit] ", "CMDbatBETWEEN;", "B between LO and HI inclusive with candidates list, nil border is (minus) infinity" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:hge], lo:bat[:hge], hi:hge):bat[:bit] ", "CMDbatBETWEEN;", "B between LO and HI inclusive, nil border is (minus) infinity" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:hge], lo:bat[:hge], hi:hge, s:bat[:oid]):bat[:bit] ", "CMDbatBETWEEN;", "B between LO and HI inclusive with candidates list, nil border is (minus) infinity" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:hge], lo:hge, hi:bat[:hge]):bat[:bit] ", "CMDbatBETWEEN;", "B between LO and HI inclusive, nil border is (minus) infinity" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:hge], lo:hge, hi:bat[:hge], s:bat[:oid]):bat[:bit] ", "CMDbatBETWEEN;", "B between LO and HI inclusive with candidates list, nil border is (minus) infinity" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:hge], lo:hge, hi:hge):bat[:bit] ", "CMDbatBETWEEN;", "B between LO and HI inclusive, nil border is (minus) infinity" ] -[ "batcalc", "between", "pattern batcalc.between(b:bat[:hge], lo:hge, hi:hge, s:bat[:oid]):bat[:bit] ", "CMDbatBETWEEN;", "B between LO and HI inclusive with candidates list, nil border is (minus) infinity" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:any_1, s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:bat[:any_1], s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:any_1, v2:bat[:any_1], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:any_1, s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:bat[:any_1], s:bat[:oid], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa) with candidate list" ] +[ "batcalc", "between", "pattern batcalc.between(b:bat[:any_1], v1:bat[:any_1], v2:bat[:any_1], sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bat[:bit] ", "CMDbatBETWEEN;", "B between V1 and V2 (or vice versa)" ] [ "batcalc", "bit", "pattern batcalc.bit(b:bat[:bit]):bat[:bit] ", "CMDconvertsignal_bit;", "cast from bit to bit, signal error on overflow" ] [ "batcalc", "bit", "pattern batcalc.bit(b:bat[:bit], s:bat[:oid]):bat[:bit] ", "CMDconvertsignal_bit;", "cast from bit to bit with candidates list, signal error on overflow" ] [ "batcalc", "bit", "pattern batcalc.bit(b:bat[:bte]):bat[:bit] ", "CMDconvertsignal_bit;", "cast from bte to bit, signal error on overflow" ] @@ -14218,7 +14210,7 @@ stdout of test 'MAL-signatures` in direc [ "calc", "and", "pattern calc.and(v1:int, v2:int):int ", "CMDvarAND;", "Return V1 AND V2" ] [ "calc", "and", "pattern calc.and(v1:lng, v2:lng):lng ", "CMDvarAND;", "Return V1 AND V2" ] [ "calc", "and", "pattern calc.and(v1:sht, v2:sht):sht ", "CMDvarAND;", "Return V1 AND V2" ] -[ "calc", "between", "pattern calc.between(b:any_1, lo:any_1, hi:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit):bit ", "CMDvarBETWEEN;", "B between LO and HI inclusive" ] +[ "calc", "between", "pattern calc.between(b:any_1, lo:any_1, hi:any_1, sym:bit, linc:bit, hinc:bit, nils_false:bit, anti:bit):bit ", "CMDvarBETWEEN;", "B between LO and HI inclusive" ] [ "calc", "bit", "pattern calc.bit(v:bit):bit ", "CMDvarCONVERT;", "Cast VALUE to bit" ] [ "calc", "bit", "pattern calc.bit(v:bte):bit ", "CMDvarCONVERT;", "Cast VALUE to bit" ] [ "calc", "bit", "pattern calc.bit(v:dbl):bit ", "CMDvarCONVERT;", "Cast VALUE to bit" ] @@ -16142,6 +16134,7 @@ stdout of test 'MAL-signatures` in direc [ "sql", "resultSet", "unsafe pattern sql.resultSet(tbl:bat[:str], attr:bat[:str], tpe:bat[:str], len:bat[:int], scale:bat[:int], cols:any...):int ", "mvc_row_result_wrap;", "Prepare a table result set for the client front-end" ] [ "sql", "resultSet", "unsafe pattern sql.resultSet(tbl:str, attr:str, tpe:str, len:int, scale:int, eclass:int, val:any):int ", "mvc_scalar_value_wrap;", "Prepare a table result set for the client front-end." ] [ "sql", "resultSet", "unsafe pattern sql.resultSet(tbl:bat[:str], attr:bat[:str], tpe:bat[:str], len:bat[:int], scale:bat[:int], cols:bat[:any]...):int ", "mvc_table_result_wrap;", "Prepare a table result set for the client in default CSV format" ] +[ "sql", "resume_log_flushing", "command sql.resume_log_flushing():void ", "SQLresume_log_flushing;", "Resume WAL log flushing" ] [ "sql", "reuse", "pattern sql.reuse(sch:str, tbl:str):void ", "SQLreuse;", "Consolidate the deletion table over all columns reusing deleted slots" ] [ "sql", "round", "command sql.round(v:bte, d:int, s:int, r:bte):bte ", "bte_round_wrap;", "round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot)" ] [ "sql", "round", "command sql.round(v:dbl, r:bte):dbl ", "dbl_round_wrap;", "round off the floating point v to r digits behind the dot (if r < 0, before the dot)" ] @@ -16183,6 +16176,7 @@ stdout of test 'MAL-signatures` in direc [ "sql", "sum", "pattern sql.sum(b:lng, s:lng, e:lng):lng ", "SQLsum;", "return the sum of groups" ] [ "sql", "sum", "pattern sql.sum(b:sht, s:lng, e:lng):hge ", "SQLsum;", "return the sum of groups" ] [ "sql", "sum", "pattern sql.sum(b:sht, s:lng, e:lng):lng ", "SQLsum;", "return the sum of groups" ] +[ "sql", "suspend_log_flushing", "command sql.suspend_log_flushing():void ", "SQLsuspend_log_flushing;", "Suspend WAL log flushing" ] [ "sql", "sysmon_pause", "pattern sql.sysmon_pause(tag:int):void ", "SYSMONpause;", "" ] [ "sql", "sysmon_pause", "pattern sql.sysmon_pause(tag:lng):void ", "SYSMONpause;", "" ] [ "sql", "sysmon_pause", "pattern sql.sysmon_pause(tag:sht):void ", "SYSMONpause;", "" ] 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 @@ -27,10 +27,10 @@ BAT *BATcalcaddcst(BAT *b, const ValReco BAT *BATcalcand(BAT *b1, BAT *b2, BAT *s); BAT *BATcalcandcst(BAT *b, const ValRecord *v, BAT *s); gdk_return BATcalcavg(BAT *b, BAT *s, dbl *avg, BUN *vals, int scale); -BAT *BATcalcbetween(BAT *b, BAT *lo, BAT *hi, BAT *s, bool symmetric, bool linc, bool hinc, bool nils_false); -BAT *BATcalcbetweenbatcst(BAT *b, BAT *lo, const ValRecord *hi, BAT *s, bool symmetric, bool linc, bool hinc, bool nils_false); -BAT *BATcalcbetweencstbat(BAT *b, const ValRecord *lo, BAT *hi, BAT *s, bool symmetric, bool linc, bool hinc, bool nils_false); -BAT *BATcalcbetweencstcst(BAT *b, const ValRecord *lo, const ValRecord *hi, BAT *s, bool symmetric, bool linc, bool hinc, bool nils_false); +BAT *BATcalcbetween(BAT *b, BAT *lo, BAT *hi, BAT *s, bool symmetric, bool linc, bool hinc, bool nils_false, bool anti); +BAT *BATcalcbetweenbatcst(BAT *b, BAT *lo, const ValRecord *hi, BAT *s, bool symmetric, bool linc, bool hinc, bool nils_false, bool anti); +BAT *BATcalcbetweencstbat(BAT *b, const ValRecord *lo, BAT *hi, BAT *s, bool symmetric, bool linc, bool hinc, bool nils_false, bool anti); +BAT *BATcalcbetweencstcst(BAT *b, const ValRecord *lo, const ValRecord *hi, BAT *s, bool symmetric, bool linc, bool hinc, bool nils_false, bool anti); BAT *BATcalccmp(BAT *b1, BAT *b2, BAT *s); BAT *BATcalccmpcst(BAT *b, const ValRecord *v, BAT *s); BAT *BATcalccstadd(const ValRecord *v, BAT *b, BAT *s, int tp, bool abort_on_error); @@ -106,7 +106,6 @@ dbl BATcalcvariance_population(dbl *avgp dbl BATcalcvariance_sample(dbl *avgp, BAT *b); BAT *BATcalcxor(BAT *b1, BAT *b2, BAT *s); BAT *BATcalcxorcst(BAT *b, const ValRecord *v, BAT *s); -bool BATcandcontains(BAT *s, oid o); bool BATcheckorderidx(BAT *b); gdk_return BATclear(BAT *b, bool force); void BATcommit(BAT *b); @@ -123,7 +122,7 @@ gdk_return BATfirstn(BAT **topn, BAT **g restrict_t BATgetaccess(BAT *b); PROPrec *BATgetprop(BAT *b, enum prop_t idx); gdk_return BATgroup(BAT **groups, BAT **extents, BAT **histo, BAT *b, BAT *s, BAT *g, BAT *e, BAT *h) __attribute__((__warn_unused_result__)); -const char *BATgroupaggrinit(BAT *b, BAT *g, BAT *e, BAT *s, oid *minp, oid *maxp, BUN *ngrpp, BUN *startp, BUN *endp, const oid **candp, const oid **candendp); +const char *BATgroupaggrinit(BAT *b, BAT *g, BAT *e, BAT *s, oid *minp, oid *maxp, BUN *ngrpp, struct canditer *ci, BUN *ncand); gdk_return BATgroupavg(BAT **bnp, BAT **cntsp, BAT *b, BAT *g, BAT *e, BAT *s, int tp, bool skip_nils, bool abort_on_error, int scale); BAT *BATgroupcount(BAT *b, BAT *g, BAT *e, BAT *s, int tp, bool skip_nils, bool abort_on_error); BAT *BATgroupmax(BAT *b, BAT *g, BAT *e, BAT *s, int tp, bool skip_nils, bool abort_on_error); @@ -155,6 +154,7 @@ void *BATmin(BAT *b, void *aggr); void *BATmin_skipnil(BAT *b, void *aggr, bit skipnil); gdk_return BATmode(BAT *b, bool transient); void BATmsync(BAT *b); +gdk_return BATnegcands(BAT *cands, BAT *odels); bool BATordered(BAT *b); bool BATordered_rev(BAT *b); gdk_return BATorderidx(BAT *b, bool stable); @@ -359,7 +359,7 @@ ValPtr VALset(ValPtr v, int t, void *p); gdk_return VARcalcabsolute(ValPtr ret, const ValRecord *v); gdk_return VARcalcadd(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, bool abort_on_error); gdk_return VARcalcand(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -gdk_return VARcalcbetween(ValPtr ret, const ValRecord *v, const ValRecord *lo, const ValRecord *hi, bool symmetric, bool linc, bool hinc, bool nils_false); +gdk_return VARcalcbetween(ValPtr ret, const ValRecord *v, const ValRecord *lo, const ValRecord *hi, bool symmetric, bool linc, bool hinc, bool nils_false, bool anti); gdk_return VARcalccmp(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); gdk_return VARcalcdecr(ValPtr ret, const ValRecord *v, bool abort_on_error); gdk_return VARcalcdiv(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, bool abort_on_error); @@ -397,6 +397,17 @@ ssize_t bitToStr(str *dst, size_t *len, ssize_t bteFromStr(const char *src, size_t *len, bte **dst, bool external); ssize_t bteToStr(str *dst, size_t *len, const bte *src, bool external); const bte bte_nil; +oid canditer_idx(struct canditer *ci, BUN p); +BUN canditer_init(struct canditer *ci, BAT *b, BAT *s); +oid canditer_last(struct canditer *ci); +oid canditer_peek(struct canditer *ci); +oid canditer_peekprev(struct canditer *ci); +oid canditer_prev(struct canditer *ci); +void canditer_reset(struct canditer *ci); +BUN canditer_search(struct canditer *ci, oid o, bool next); +void canditer_setidx(struct canditer *ci, BUN p); +BAT *canditer_slice(struct canditer *ci, BUN lo, BUN hi); +BAT *canditer_slice2(struct canditer *ci, BUN lo1, BUN hi1, BUN lo2, BUN hi2); int closedir(DIR *dir); ssize_t dblFromStr(const char *src, size_t *len, dbl **dst, bool external); ssize_t dblToStr(str *dst, size_t *len, const dbl *src, bool external); diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c --- a/clients/mapiclient/mclient.c +++ b/clients/mapiclient/mclient.c @@ -1900,9 +1900,7 @@ format_result(Mapi mid, MapiHdl hdl, boo SQLqueryEcho(hdl); if (formatter == TABLEformatter || formatter == ROWCOUNTformatter) - mnstr_printf(toConsole, - "auto commit mode: %s\n", - mapi_get_autocommit(mid) ? "on" : "off"); + mnstr_printf(toConsole, "operation successful\n"); timerHuman(sqloptimizer, maloptimizer, querytime, singleinstr, false); continue; case Q_PREPARE: diff --git a/clients/mapiclient/mhelp.c b/clients/mapiclient/mhelp.c --- a/clients/mapiclient/mhelp.c +++ b/clients/mapiclient/mhelp.c @@ -443,9 +443,9 @@ SQLhelp sqlhelp1[] = { "See also https://www.monetdb.org/Documentation/SQLreference/TableExpressions"}, {"SET", "Assign a value to a variable or column", - "SET '=' simple_atom", + "SET ident '=' simple_atom", "simple_atom", - NULL}, + "See also https://www.monetdb.org/Documentation/Manuals/SQLreference/Variables"}, {"SET LOCAL TRANSACTION", "", "START LOCAL TRANSACTION transactionmode", diff --git a/clients/mapilib/ChangeLog b/clients/mapilib/ChangeLog.Nov2019 copy from clients/mapilib/ChangeLog copy to clients/mapilib/ChangeLog.Nov2019 diff --git a/clients/mapilib/mapi.rc b/clients/mapilib/mapi.rc --- a/clients/mapilib/mapi.rc +++ b/clients/mapilib/mapi.rc @@ -3,8 +3,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US 1 VERSIONINFO - FILEVERSION 11,34,0,1 - PRODUCTVERSION 11,34,0,1 + FILEVERSION 11,36,0,1 + PRODUCTVERSION 11,36,0,1 FILEFLAGSMASK 0x3fL FILEFLAGS 0 FILEOS VOS_NT_WINDOWS32 @@ -18,7 +18,7 @@ BEGIN VALUE "Comments", "\0" VALUE "CompanyName", "MonetDB B.V.\0" VALUE "FileDescription", "MonetDB Application Interface DLL\0" - VALUE "FileVersion", "11.34.0\0" + VALUE "FileVersion", "11.36.0\0" // ^^^^^^^^ // Maintained via vertoo. Please don't modify by hand! // Contact monetdb-develop...@lists.sourceforge.net for details and/or assistance. @@ -28,7 +28,7 @@ BEGIN VALUE "OriginalFilename", "Mapi.dll\0" _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list