Changeset: 5e2d9826f96e for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5e2d9826f96e Added Files: buildtools/autogen/autogen/filesplit.py monetdb5/mal/Tests/tst023.malC monetdb5/mal/Tests/tst023.stable.err monetdb5/mal/Tests/tst023.stable.out monetdb5/optimizer/opt_emptybind.c monetdb5/optimizer/opt_emptybind.h monetdb5/optimizer/opt_jit.c monetdb5/optimizer/opt_jit.h sql/benchmarks/tpch/Tests/02-explain.stable.out.32bit sql/benchmarks/tpch/Tests/02-plan.stable.out.32bit sql/benchmarks/tpch/Tests/13-plan.stable.out.32bit sql/benchmarks/tpch/Tests/16-plan.stable.out.32bit sql/test/BugTracker-2010/Tests/offset_limited_32bit.SF-2950579.stable.err.32bit sql/test/BugTracker-2010/Tests/offset_limited_32bit.SF-2950579.stable.out.32bit sql/test/BugTracker-2016/Tests/create_merge_table_withdata.Bug-4041.sql sql/test/BugTracker-2016/Tests/create_merge_table_withdata.Bug-4041.stable.err sql/test/BugTracker-2016/Tests/create_merge_table_withdata.Bug-4041.stable.out sql/test/BugTracker-2016/Tests/innerjoin-leftjoin-or.Bug-4049.sql sql/test/BugTracker-2016/Tests/innerjoin-leftjoin-or.Bug-4049.stable.err sql/test/BugTracker-2016/Tests/innerjoin-leftjoin-or.Bug-4049.stable.out sql/test/BugTracker-2016/Tests/like_in_non_sys_schema.Bug-4062.sql sql/test/BugTracker-2016/Tests/like_in_non_sys_schema.Bug-4062.stable.err sql/test/BugTracker-2016/Tests/like_in_non_sys_schema.Bug-4062.stable.out sql/test/BugTracker-2016/Tests/simpletest.sql sql/test/BugTracker-2016/Tests/simpletest.stable.err sql/test/BugTracker-2016/Tests/simpletest.stable.out sql/test/BugTracker-2016/Tests/timestamp_with_tz_fromstr.Bug-4019.sql sql/test/BugTracker-2016/Tests/timestamp_with_tz_fromstr.Bug-4019.stable.err sql/test/BugTracker-2016/Tests/timestamp_with_tz_fromstr.Bug-4019.stable.out sql/test/lateral/Tests/All sql/test/lateral/Tests/lateral.sql sql/test/lateral/Tests/lateral.stable.err sql/test/lateral/Tests/lateral.stable.out sql/test/orderidx/Tests/simpletable.stable.out.32bit sql/test/orderidx/Tests/smalltable.stable.out.32bit sql/test/pg_regress/Tests/oid.stable.out.32bit sql/test/pg_regress/Tests/without_oid.stable.out.32bit Removed Files: sql/benchmarks/tpch/Tests/01-explain.stable.out.32bit sql/benchmarks/tpch/Tests/04-explain.stable.out.32bit sql/benchmarks/tpch/Tests/13-explain.stable.out.32bit sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit sql/benchmarks/tpch/Tests/22-explain.stable.out.32bit sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out.32bit sql/test/BugTracker-2010/Tests/limit_in_prepare.Bug-2552.stable.out.32bit sql/test/BugTracker-2010/Tests/prepare_stmt.Bug-2533.Bug-2534.stable.out.32bit sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.out.32bit sql/test/BugTracker-2016/Tests/rename_exps.Bug-3974.stable.out.32bit sql/test/Dependencies/Tests/Dependencies.stable.out.int128 sql/test/pg_regress/Tests/oid.stable.err.Windows Modified Files: buildtools/autogen/autogen/am.py buildtools/autogen/autogen/codegen.py buildtools/autogen/autogen/msc.py clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/SQL-dump.SQL.py clients/Tests/SQL-dump.stable.out clients/Tests/SQL-dump.stable.out.int128 clients/Tests/exports.stable.out clients/odbc/driver/README clients/odbc/driver/SQLBindParameter.c clients/odbc/driver/SQLBulkOperations.c clients/odbc/driver/SQLCopyDesc.c clients/odbc/driver/SQLDescribeParam.c clients/odbc/driver/SQLEndTran.c clients/odbc/driver/SQLExtendedFetch.c clients/odbc/driver/SQLFetchScroll.c clients/odbc/driver/SQLGetEnvAttr.c clients/odbc/driver/SQLGetFunctions.c clients/odbc/driver/SQLNumParams.c clients/odbc/driver/SQLSetDescRec.c clients/odbc/driver/SQLSetEnvAttr.c common/stream/stream.c configure.ag gdk/gdk.h gdk/gdk_aggr.c gdk/gdk_atoms.h gdk/gdk_bat.c gdk/gdk_batop.c gdk/gdk_calc.c gdk/gdk_calc.h gdk/gdk_firstn.c gdk/gdk_group.c gdk/gdk_heap.c gdk/gdk_logger.c gdk/gdk_posix.c gdk/gdk_private.h gdk/gdk_project.c gdk/gdk_system.c gdk/gdk_system.h gdk/gdk_system_private.h gdk/gdk_unique.c gdk/gdk_utils.c gdk/gdk_value.c geom/sql/40_geom.sql java/ChangeLog java/src/main/java/nl/cwi/monetdb/client/JdbcClient.java java/src/main/java/nl/cwi/monetdb/jdbc/MonetBlob.java java/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java java/src/main/java/nl/cwi/monetdb/jdbc/MonetDriver.java.in java/src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java java/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java java/src/main/java/nl/cwi/monetdb/mcl/parser/HeaderLineParser.java java/src/main/java/nl/cwi/monetdb/mcl/parser/TupleLineParser.java java/src/main/java/nl/cwi/monetdb/util/CmdLineOpts.java java/src/main/java/nl/cwi/monetdb/util/OptionsException.java java/src/main/java/nl/cwi/monetdb/util/SQLExporter.java java/tests/BugDatabaseMetaData_Bug_3356.java monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows.single monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.single monetdb5/mal/Tests/All monetdb5/mal/mal_builder.c monetdb5/mal/mal_client.c monetdb5/mal/mal_client.h monetdb5/mal/mal_dataflow.c monetdb5/mal/mal_debugger.c monetdb5/mal/mal_debugger.h monetdb5/mal/mal_function.c monetdb5/mal/mal_import.c monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_linker.c monetdb5/mal/mal_listing.c monetdb5/mal/mal_module.c monetdb5/mal/mal_profiler.c monetdb5/mal/mal_resolve.c monetdb5/mal/mal_session.c monetdb5/mal/mal_stack.h monetdb5/modules/atoms/batxml.c monetdb5/modules/atoms/blob.c monetdb5/modules/atoms/color.c monetdb5/modules/atoms/identifier.c monetdb5/modules/atoms/inet.c monetdb5/modules/atoms/json.c monetdb5/modules/atoms/mtime.c monetdb5/modules/atoms/streams.c monetdb5/modules/atoms/uuid.c monetdb5/modules/kernel/algebra.c monetdb5/modules/mal/Tests/inspect05.stable.out monetdb5/modules/mal/batExtensions.c monetdb5/modules/mal/calc.c monetdb5/modules/mal/inspect.c monetdb5/modules/mal/mal_mapi.c monetdb5/modules/mal/mdb.c monetdb5/modules/mal/mkey.c monetdb5/modules/mal/mkey.h monetdb5/modules/mal/projectionpath.c monetdb5/modules/mal/tablet.c monetdb5/modules/mal/tokenizer.c monetdb5/optimizer/Makefile.ag monetdb5/optimizer/Tests/manifold2.stable.out.single monetdb5/optimizer/Tests/tst4000.malC monetdb5/optimizer/Tests/tst4003.malC monetdb5/optimizer/Tests/tst4010.malC monetdb5/optimizer/opt_aliases.c monetdb5/optimizer/opt_candidates.c monetdb5/optimizer/opt_evaluate.c monetdb5/optimizer/opt_mergetable.c monetdb5/optimizer/opt_pipes.c monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h monetdb5/optimizer/opt_support.c monetdb5/optimizer/opt_wrapper.c monetdb5/optimizer/optimizer.c monetdb5/optimizer/optimizer.h monetdb5/optimizer/optimizer.mal monetdb5/scheduler/run_pipeline.c monetdb5/scheduler/run_pipeline.h sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.out sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.out sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql.mal sql/backends/monet5/sql_execute.c sql/backends/monet5/sql_execute.h sql/backends/monet5/sql_gencode.c sql/backends/monet5/sql_optimizer.c sql/backends/monet5/sql_optimizer.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/vaults/fits/fits.c sql/benchmarks/ssbm/Tests/01-explain.stable.out sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/01-plan.stable.out sql/benchmarks/ssbm/Tests/02-explain.stable.out sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/02-plan.stable.out sql/benchmarks/ssbm/Tests/03-explain.stable.out sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/03-plan.stable.out sql/benchmarks/ssbm/Tests/04-explain.stable.out sql/benchmarks/ssbm/Tests/04-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/05-explain.stable.out sql/benchmarks/ssbm/Tests/05-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/06-explain.stable.out sql/benchmarks/ssbm/Tests/06-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/07-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/08-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/09-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/10-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/11-explain.stable.out sql/benchmarks/ssbm/Tests/11-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/11-plan.stable.out sql/benchmarks/ssbm/Tests/12-explain.stable.out sql/benchmarks/ssbm/Tests/12-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/12-plan.stable.out sql/benchmarks/ssbm/Tests/13-explain.stable.out sql/benchmarks/ssbm/Tests/13-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/13-plan.stable.out sql/benchmarks/tpch/Tests/01-explain.stable.out sql/benchmarks/tpch/Tests/01-explain.stable.out.int128 sql/benchmarks/tpch/Tests/01-plan.stable.out sql/benchmarks/tpch/Tests/01-plan.stable.out.int128 sql/benchmarks/tpch/Tests/02-explain.stable.out sql/benchmarks/tpch/Tests/03-explain.stable.out sql/benchmarks/tpch/Tests/03-explain.stable.out.int128 sql/benchmarks/tpch/Tests/03-plan.stable.out sql/benchmarks/tpch/Tests/03-plan.stable.out.int128 sql/benchmarks/tpch/Tests/04-explain.stable.out sql/benchmarks/tpch/Tests/05-explain.stable.out sql/benchmarks/tpch/Tests/05-explain.stable.out.32bit sql/benchmarks/tpch/Tests/05-explain.stable.out.int128 sql/benchmarks/tpch/Tests/05-plan.stable.out sql/benchmarks/tpch/Tests/05-plan.stable.out.int128 sql/benchmarks/tpch/Tests/06-explain.stable.out sql/benchmarks/tpch/Tests/06-explain.stable.out.int128 sql/benchmarks/tpch/Tests/06-plan.stable.out sql/benchmarks/tpch/Tests/06-plan.stable.out.int128 sql/benchmarks/tpch/Tests/07-explain.stable.out sql/benchmarks/tpch/Tests/07-explain.stable.out.int128 sql/benchmarks/tpch/Tests/07-plan.stable.out sql/benchmarks/tpch/Tests/07-plan.stable.out.int128 sql/benchmarks/tpch/Tests/08-explain.stable.out sql/benchmarks/tpch/Tests/08-explain.stable.out.int128 sql/benchmarks/tpch/Tests/08-plan.stable.out sql/benchmarks/tpch/Tests/08-plan.stable.out.int128 sql/benchmarks/tpch/Tests/09-explain.stable.out sql/benchmarks/tpch/Tests/09-explain.stable.out.int128 sql/benchmarks/tpch/Tests/09-plan.stable.out sql/benchmarks/tpch/Tests/09-plan.stable.out.int128 sql/benchmarks/tpch/Tests/10-explain.stable.out sql/benchmarks/tpch/Tests/10-explain.stable.out.int128 sql/benchmarks/tpch/Tests/10-plan.stable.out sql/benchmarks/tpch/Tests/10-plan.stable.out.int128 sql/benchmarks/tpch/Tests/11-explain.stable.out sql/benchmarks/tpch/Tests/11-explain.stable.out.int128 sql/benchmarks/tpch/Tests/11-plan.stable.out sql/benchmarks/tpch/Tests/11-plan.stable.out.int128 sql/benchmarks/tpch/Tests/12-explain.stable.out sql/benchmarks/tpch/Tests/12-explain.stable.out.int128 sql/benchmarks/tpch/Tests/12-plan.stable.out sql/benchmarks/tpch/Tests/13-explain.stable.out sql/benchmarks/tpch/Tests/14-explain.stable.out sql/benchmarks/tpch/Tests/14-explain.stable.out.int128 sql/benchmarks/tpch/Tests/14-plan.stable.out sql/benchmarks/tpch/Tests/14-plan.stable.out.int128 sql/benchmarks/tpch/Tests/15-explain.stable.out sql/benchmarks/tpch/Tests/15-explain.stable.out.int128 sql/benchmarks/tpch/Tests/16-explain.stable.out sql/benchmarks/tpch/Tests/16-explain.stable.out.32bit sql/benchmarks/tpch/Tests/17-explain.stable.out.int128 sql/benchmarks/tpch/Tests/18-explain.stable.out.int128 sql/benchmarks/tpch/Tests/19-explain.stable.out sql/benchmarks/tpch/Tests/19-explain.stable.out.int128 sql/benchmarks/tpch/Tests/19-plan.stable.out sql/benchmarks/tpch/Tests/19-plan.stable.out.int128 sql/benchmarks/tpch/Tests/20-explain.stable.out.32bit sql/benchmarks/tpch/Tests/20-explain.stable.out.int128 sql/benchmarks/tpch/Tests/21-explain.stable.out sql/benchmarks/tpch/Tests/22-explain.stable.out.int128 sql/benchmarks/tpch/Tests/22-plan.stable.out sql/common/sql_keyword.c sql/common/sql_list.c sql/common/sql_types.c sql/common/sql_types.h sql/include/sql_catalog.h sql/include/sql_list.h sql/include/sql_relation.h sql/jdbc/tests/Tests/BugDatabaseMetaData_Bug_3356.stable.out sql/jdbc/tests/Tests/Test_JdbcClient.stable.out sql/scripts/12_url.sql sql/scripts/14_inet.sql sql/scripts/39_analytics.sql sql/scripts/39_analytics_hge.sql sql/scripts/40_json.sql sql/scripts/40_json_hge.sql sql/scripts/45_uuid.sql sql/server/Makefile.ag sql/server/rel_dump.c sql/server/rel_exp.c sql/server/rel_exp.h sql/server/rel_optimizer.c sql/server/rel_psm.c sql/server/rel_psm.h sql/server/rel_rel.c sql/server/rel_rel.h sql/server/rel_schema.c sql/server/rel_select.c sql/server/rel_select.h sql/server/rel_updates.c sql/server/sql_atom.c sql/server/sql_atom.h sql/server/sql_datetime.c sql/server/sql_decimal.c sql/server/sql_mvc.h sql/server/sql_parser.y sql/server/sql_qc.c sql/server/sql_qc.h sql/server/sql_scan.c sql/server/sql_symbol.c sql/server/sql_symbol.h sql/storage/bat/bat_table.c sql/storage/sql_storage.h sql/storage/store.c sql/test/BugDay_2005-10-06_2.9.3/Tests/huge_expression_and_column_name.SF-921173.stable.out.int128 sql/test/BugDay_2005-11-09_2.9.3/Tests/sql_server_crash.SF-1080024.stable.out sql/test/BugTracker-2009/Tests/All sql/test/BugTracker-2009/Tests/POWER_vs_prod.SF-2596114.stable.out sql/test/BugTracker-2009/Tests/arithmetic-small-values-null.SF-2921310.stable.out.int128 sql/test/BugTracker-2009/Tests/explain_gives_crash.SF-2741829.stable.err sql/test/BugTracker-2009/Tests/explain_gives_crash.SF-2741829.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.stable.out sql/test/BugTracker-2010/Tests/prepare_stmt.Bug-2533.Bug-2534.stable.err sql/test/BugTracker-2010/Tests/prepare_stmt.Bug-2533.Bug-2534.stable.out sql/test/BugTracker-2011/Tests/crash_on_alias.Bug-2798.stable.out.int128 sql/test/BugTracker-2011/Tests/func_iter_vs_bulk.Bug-2826.stable.out sql/test/BugTracker-2011/Tests/supertype.Bug-2830.stable.out sql/test/BugTracker-2012/Tests/float-mod.Bug-3086.stable.out sql/test/BugTracker-2012/Tests/power_priority.Bug-2291.stable.out sql/test/BugTracker-2012/Tests/power_priority.Bug-2291.stable.out.int128 sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.stable.out sql/test/BugTracker-2012/Tests/type_resolution_error_in_SQL_procedural_code.Bug-3143.stable.err sql/test/BugTracker-2013/Tests/between.Bug-3259.sql sql/test/BugTracker-2013/Tests/between.Bug-3259.stable.out sql/test/BugTracker-2013/Tests/between.Bug-3259.stable.out.int128 sql/test/BugTracker-2013/Tests/between.Bug-3259.stable.out.int128.single sql/test/BugTracker-2013/Tests/between.Bug-3259.stable.out.single sql/test/BugTracker-2014/Tests/manifold.Bug-3556.stable.out 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-2014/Tests/querylog.Bug-3607.stable.out.single sql/test/BugTracker-2015/Tests/expression_with_comparison.Bug-3854.stable.out sql/test/BugTracker-2015/Tests/long_insert.Bug-3845.stable.err sql/test/BugTracker-2015/Tests/long_insert.Bug-3845.stable.out sql/test/BugTracker-2015/Tests/mserver-crashes-under-specific-combination-of-JOIN-and-WHERE-conditions.Bug-3872.stable.out sql/test/BugTracker-2015/Tests/operator-priority.Bug-3686.stable.out sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.out sql/test/BugTracker-2015/Tests/useless_casts.Bug-3756.stable.out sql/test/BugTracker-2016/Tests/All sql/test/BugTracker-2016/Tests/column_alias_in_where_clause.Bug-3947.stable.out sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.out sql/test/BugTracker-2016/Tests/epoch.Bug-3979.stable.out sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out sql/test/BugTracker-2016/Tests/storagemodel.stable.out sql/test/BugTracker-2016/Tests/storagemodel.stable.out.32bit sql/test/BugTracker/Tests/bind_with_cast.SF-1720934.stable.err sql/test/BugTracker/Tests/explain.SF-1739353.stable.out sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit sql/test/Dependencies/Tests/Dependencies.stable.out sql/test/Tests/setoptimizer.stable.out sql/test/Tests/setoptimizer.stable.out.Windows sql/test/Tests/systemfunctions.stable.out sql/test/Tests/systemfunctions.stable.out.int128 sql/test/bugs/Tests/arith-bug-sf-949228.stable.out sql/test/bugs/Tests/create_insert_select_aggr-bug-00001.stable.out sql/test/bugs/Tests/emili.stable.err sql/test/emptydb-upgrade-chain-hge/Tests/check.stable.out.int128 sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/check.stable.out sql/test/emptydb-upgrade-chain/Tests/check.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-hge/Tests/check.stable.out.int128 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/check.stable.out sql/test/emptydb-upgrade/Tests/check.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.stable.out sql/test/emptydb/Tests/check.stable.out.int128 sql/test/leaks/Tests/check0.stable.out sql/test/leaks/Tests/check1.stable.out sql/test/leaks/Tests/check1.stable.out.int128 sql/test/leaks/Tests/check2.stable.out sql/test/leaks/Tests/check2.stable.out.int128 sql/test/leaks/Tests/check3.stable.out sql/test/leaks/Tests/check3.stable.out.int128 sql/test/leaks/Tests/check4.stable.out sql/test/leaks/Tests/check4.stable.out.int128 sql/test/leaks/Tests/check5.stable.out sql/test/leaks/Tests/check5.stable.out.int128 sql/test/leaks/Tests/select1.stable.out sql/test/leaks/Tests/select2.stable.out sql/test/mapi/Tests/sql_int128.stable.out sql/test/mergetables/Tests/mergequery.stable.out sql/test/mergetables/Tests/part-elim.sql sql/test/mergetables/Tests/part-elim.stable.out sql/test/pg_regress/Tests/interval.stable.err sql/test/pg_regress/Tests/interval.stable.err.int128 sql/test/pg_regress/Tests/interval.stable.out sql/test/pg_regress/Tests/interval.stable.out.int128 sql/test/pg_regress/Tests/strings.stable.err sql/test/remote/Tests/partition_elim.stable.out sql/test/remote/Tests/ssbm.SQL.py sql/test/remote/Tests/ssbm.stable.out sql/test/remote/Tests/ssbm.stable.out.int128 sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out 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/upgrade.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 tools/merovingian/daemon/argvcmds.c tools/merovingian/daemon/handlers.c tools/merovingian/daemon/monetdbd.service.in Branch: data-vaults Log Message:
Merge with default diffs (truncated from 42640 to 300 lines): diff --git a/buildtools/autogen/autogen/am.py b/buildtools/autogen/autogen/am.py --- a/buildtools/autogen/autogen/am.py +++ b/buildtools/autogen/autogen/am.py @@ -10,9 +10,7 @@ import sys sys.path.insert(0, os.path.dirname(os.path.realpath(__file__))) from codegen import find_org import re - -automake_ext = ['', 'c', 'def', 'h', 'lo', 'o', 'pm.c', - 'tab.c', 'tab.h', 'yy.c'] +from filesplit import split_filename, rsplit_filename, automake_ext # buildtools_ext contains the extensions of files from which sources # are generated by rules that are specified in rules.mk in @@ -23,21 +21,6 @@ buildtools_ext = ['brg', 'l', 'pm.i', 's am_assign = "+=" -def split_filename(f): - base = f - ext = "" - if f.find(".") >= 0: - return f.split(".", 1) - return base, ext - -def rsplit_filename(f): - base = f - ext = "" - s = f.rfind(".") - if s >= 0: - return f[:s], f[s+1:] - return base, ext - def cond_subdir(fd, dir, i): res = "" parts = dir.split("?") diff --git a/buildtools/autogen/autogen/codegen.py b/buildtools/autogen/autogen/codegen.py --- a/buildtools/autogen/autogen/codegen.py +++ b/buildtools/autogen/autogen/codegen.py @@ -13,6 +13,7 @@ import sys from tokenize import tokenize from tokenize import NL +from filesplit import split_filename # direct rules @@ -75,13 +76,6 @@ scan_map = { 'tex': [ tex_inc, None, '' ], } -def split_filename(f): - base = f - ext = "" - if f.find(".") >= 0: - return f.split(".", 1) - return base,ext - def readfile(f): src = open(f, 'r') buf = src.read() diff --git a/buildtools/autogen/autogen/filesplit.py b/buildtools/autogen/autogen/filesplit.py new file mode 100644 --- /dev/null +++ b/buildtools/autogen/autogen/filesplit.py @@ -0,0 +1,43 @@ +# 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 - 2016 MonetDB B.V. + + +# get the right-most extension of a filename +def rsplit_filename(f): + base = f + ext = "" + s = f.rfind(".") + if s >= 0: + return f[:s], f[s+1:] + return base, ext + +automake_ext = ['', 'c', 'def', 'h', 'lo', 'o', 'pm.c', 'tab.c', 'tab.h', 'yy.c', 'pm.i'] +automake_extra_extensions = set([rsplit_filename(x)[1] for x in automake_ext if '.' in x]) +extra_extensions = ['in', 'bat', 'sed'] + + + +# get the left-most extension of a filename +# we skip over known 'extra' extensions to get the real left-most extension +# this allows us to work with files with periods in them (file.bla.c would have 'c' as extension) +# while supporting files with multiple extensions (file.c.in would result in 'c' rather than 'in') +def split_filename(f): + base,ext = rsplit_filename(f) + # special case for automake extensions (tab.c,tab.h) + # we want: file.tab.c -> 'tab.c' + # file.bla.c -> 'c' + if ext in automake_extra_extensions: + new_base,new_ext = rsplit_filename(base) + new_ext = new_ext + '.' + ext + if new_ext in automake_ext: + return new_base,new_ext + while ext in extra_extensions: + new_base,new_ext = rsplit_filename(base) + if len(new_ext) > 0 and '/' not in new_ext: + base,ext = new_base,new_ext + '.' + ext + else: + break + return base,ext diff --git a/buildtools/autogen/autogen/msc.py b/buildtools/autogen/autogen/msc.py --- a/buildtools/autogen/autogen/msc.py +++ b/buildtools/autogen/autogen/msc.py @@ -7,6 +7,7 @@ import string import os import re +from filesplit import rsplit_filename, split_filename, automake_ext # the text that is put at the top of every generated Makefile.msc MAKEFILE_HEAD = ''' @@ -16,23 +17,6 @@ MAKEFILE_HEAD = ''' ''' -automake_ext = ['c', 'h', 'tab.c', 'tab.h', 'yy.c', 'pm.i', ''] - -def split_filename(f): - base = f - ext = "" - if f.find(".") >= 0: - return f.split(".", 1) - return base, ext - -def rsplit_filename(f): - base = f - ext = "" - s = f.rfind(".") - if s >= 0: - return f[:s], f[s+1:] - return base, ext - def msc_basename(f): # return basename (i.e. just the file name part) of a path, no # matter which directory separator was used 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 @@ -8140,7 +8140,6 @@ Ready. [ "optimizer", "aliases", "pattern optimizer.aliases(mod:str,fcn:str):str ", "OPTwrapper;", "Alias removal optimizer" ] [ "optimizer", "candidates", "pattern optimizer.candidates():str ", "OPTwrapper;", "" ] [ "optimizer", "candidates", "pattern optimizer.candidates(mod:str,fcn:str):str ", "OPTwrapper;", "Mark candidate list variables" ] -[ "optimizer", "clrDebug", "pattern optimizer.clrDebug():void ", "QOTclrdebugOptimizers;", "" ] [ "optimizer", "coercions", "pattern optimizer.coercions():str ", "OPTwrapper;", "" ] [ "optimizer", "coercions", "pattern optimizer.coercions(mod:str,fcn:str):str ", "OPTwrapper;", "Handle simple type coercions" ] [ "optimizer", "commonTerms", "pattern optimizer.commonTerms():str ", "OPTwrapper;", "" ] @@ -8157,6 +8156,8 @@ Ready. [ "optimizer", "deadcode", "pattern optimizer.deadcode(mod:str,fcn:str):str ", "OPTwrapper;", "Dead code optimizer" ] [ "optimizer", "derivePath", "pattern optimizer.derivePath():str ", "OPTwrapper;", "" ] [ "optimizer", "derivePath", "pattern optimizer.derivePath(mod:str,fcn:str):str ", "OPTwrapper;", "Join path constructor" ] +[ "optimizer", "emptybind", "pattern optimizer.emptybind():str ", "OPTwrapper;", "" ] +[ "optimizer", "emptybind", "pattern optimizer.emptybind(mod:str,fcn:str):str ", "OPTwrapper;", "Evaluate empty set expressions." ] [ "optimizer", "evaluate", "pattern optimizer.evaluate():str ", "OPTwrapper;", "" ] [ "optimizer", "evaluate", "pattern optimizer.evaluate(mod:str,fcn:str):str ", "OPTwrapper;", "Evaluate constant expressions once." ] [ "optimizer", "factorize", "pattern optimizer.factorize():str ", "OPTwrapper;", "" ] @@ -8167,6 +8168,8 @@ Ready. [ "optimizer", "generator", "pattern optimizer.generator(mod:str,fcn:str):str ", "OPTwrapper;", "Sequence generator optimizer" ] [ "optimizer", "inline", "pattern optimizer.inline():str ", "OPTwrapper;", "" ] [ "optimizer", "inline", "pattern optimizer.inline(mod:str,fcn:str):str ", "OPTwrapper;", "Expand inline functions" ] +[ "optimizer", "jit", "pattern optimizer.jit():str ", "OPTwrapper;", "" ] +[ "optimizer", "jit", "pattern optimizer.jit(mod:str,fcn:str):str ", "OPTwrapper;", "Propagate candidate lists in just-in-time optimization" ] [ "optimizer", "joinselect", "pattern optimizer.joinselect():str ", "OPTwrapper;", "" ] [ "optimizer", "joinselect", "pattern optimizer.joinselect(mod:str,fcn:str):str ", "OPTwrapper;", "Replace select with join select" ] [ "optimizer", "json", "pattern optimizer.json():str ", "OPTwrapper;", "" ] @@ -8211,7 +8214,6 @@ Ready. [ "optimizer", "reorder", "pattern optimizer.reorder(mod:str,fcn:str):str ", "OPTwrapper;", "Reorder by dataflow dependencies" ] [ "optimizer", "selcrack", "pattern optimizer.selcrack():str ", "OPTwrapper;", "" ] [ "optimizer", "selcrack", "pattern optimizer.selcrack(mod:str,fcn:str):str ", "OPTwrapper;", "Selection cracking" ] -[ "optimizer", "setDebug", "pattern optimizer.setDebug():void ", "QOTdebugOptimizers;", "" ] [ "optimizer", "showFlowGraph", "pattern optimizer.showFlowGraph(M:str,F:str,s:str):void ", "QOTshowFlowGraph;", "Dump the data flow of the function \n\tM.F in a format recognizable by the \n\tcommand 'dot' on the file s" ] [ "optimizer", "showPlan", "pattern optimizer.showPlan():void ", "QOTshowPlan;", "Illustrate the plan derived so far" ] [ "optimizer", "showPlan", "pattern optimizer.showPlan(M:str,F:str,s:str):void ", "QOTshowPlan;", "" ] @@ -8383,6 +8385,14 @@ Ready. [ "sql", "dump_cache", "pattern sql.dump_cache() (query:bat[:str],count:bat[:int]) ", "dump_cache;", "dump the content of the query cache" ] [ "sql", "dump_opt_stats", "pattern sql.dump_opt_stats() (rewrite:bat[:str],count:bat[:int]) ", "dump_opt_stats;", "dump the optimizer rewrite statistics" ] [ "sql", "dump_trace", "pattern sql.dump_trace() (event:bat[:int],clk:bat[:str],pc:bat[:str],thread:bat[:int],ticks:bat[:lng],rssMB:bat[:lng],vmMB:bat[:lng],reads:bat[:lng],writes:bat[:lng],minflt:bat[:lng],majflt:bat[:lng],nvcsw:bat[:lng],stmt:bat[:str]) ", "dump_trace;", "dump the trace statistics" ] +[ "sql", "emptybind", "pattern sql.emptybind(mvc:int,schema:str,table:str,column:str,access:int) (uid:bat[:oid],uval:bat[:any_1]) ", "mvc_bind_wrap;", "" ] +[ "sql", "emptybind", "pattern sql.emptybind(mvc:int,schema:str,table:str,column:str,access:int):bat[:any_1] ", "mvc_bind_wrap;", "" ] +[ "sql", "emptybind", "pattern sql.emptybind(mvc:int,schema:str,table:str,column:str,access:int,part_nr:int,nr_parts:int) (uid:bat[:oid],uval:bat[:any_1]) ", "mvc_bind_wrap;", "" ] +[ "sql", "emptybind", "pattern sql.emptybind(mvc:int,schema:str,table:str,column:str,access:int,part_nr:int,nr_parts:int):bat[:any_1] ", "mvc_bind_wrap;", "" ] +[ "sql", "emptybindidx", "pattern sql.emptybindidx(mvc:int,schema:str,table:str,index:str,access:int) (uid:bat[:oid],uval:bat[:any_1]) ", "mvc_bind_idxbat_wrap;", "" ] +[ "sql", "emptybindidx", "pattern sql.emptybindidx(mvc:int,schema:str,table:str,index:str,access:int):bat[:any_1] ", "mvc_bind_idxbat_wrap;", "" ] +[ "sql", "emptybindidx", "pattern sql.emptybindidx(mvc:int,schema:str,table:str,index:str,access:int,part_nr:int,nr_parts:int) (uid:bat[:oid],uval:bat[:any_1]) ", "mvc_bind_idxbat_wrap;", "" ] +[ "sql", "emptybindidx", "pattern sql.emptybindidx(mvc:int,schema:str,table:str,index:str,access:int,part_nr:int,nr_parts:int):bat[:any_1] ", "mvc_bind_idxbat_wrap;", "" ] [ "sql", "epilogue", "command sql.epilogue():void ", "SQLepilogue;", "" ] [ "sql", "eval", "pattern sql.eval(cmd:str):void ", "SQLstatement;", "Compile and execute a single sql statement" ] [ "sql", "eval", "pattern sql.eval(cmd:str,output:bit):void ", "SQLstatement;", "Compile and execute a single sql statement (and optionaly send output on the output stream)" ] @@ -8632,7 +8642,7 @@ Ready. [ "url", "url", "command url.url(s:str):url ", "URLnew;", "Create an URL from a string literal" ] [ "url", "url", "command url.url(s:url):url ", "URLnoop;", "Create an URL from a string literal" ] [ "user", "main", "function user.main():void;", "", "" ] -[ "user", "s1_1", "function user.s1_1():void;", "", "" ] +[ "user", "s2_1", "function user.s2_1():void;", "", "" ] [ "user", "sql.init", "function user.sql.init():void;", "", "" ] [ "uuid", "#cmp", "command uuid.#cmp():void ", "UUIDcompare;", "" ] [ "uuid", "#fromstr", "command uuid.#fromstr():void ", "UUIDfromString;", "" ] @@ -8694,6 +8704,28 @@ Ready. [ "zrule", "define", "command zrule.define(m:int,d:int,w:int,h:int,min:int):zrule ", "MTIMEruleDef0;", "Introduce a synomym timezone rule." ] [ "zrule", "define", "command zrule.define(m:int,d:str,w:int,h:int,min:int):zrule ", "MTIMEruleDef1;", "Introduce a synomym timezone rule." ] [ "zrule", "define", "command zrule.define(m:int,d:str,w:int,min:int):zrule ", "MTIMEruleDef2;", "Introduce a synomym timezone rule." ] +pattern optimizer.emptycolumn(mod:str,fcn:str):str +address OPTwrapper; +comment Evaluate empty set expressions. + +pattern optimizer.emptycolumn():str +address OPTwrapper; +pattern sql.emptycolumn(mvc:int,schema:str,table:str,column:str,access:int,part_nr:int,nr_parts:int) (uid:bat[:oid],uval:bat[:any_1]) +address mvc_bind_wrap; +pattern sql.emptycolumn(mvc:int,schema:str,table:str,column:str,access:int,part_nr:int,nr_parts:int):bat[:any_1] +address mvc_bind_wrap; +pattern sql.emptycolumn(mvc:int,schema:str,table:str,column:str,access:int) (uid:bat[:oid],uval:bat[:any_1]) +address mvc_bind_wrap; +pattern sql.emptycolumn(mvc:int,schema:str,table:str,column:str,access:int):bat[:any_1] +address mvc_bind_wrap; +pattern sql.emptycolumnidx(mvc:int,schema:str,table:str,index:str,access:int,part_nr:int,nr_parts:int) (uid:bat[:oid],uval:bat[:any_1]) +address mvc_bind_idxbat_wrap; +pattern sql.emptycolumnidx(mvc:int,schema:str,table:str,index:str,access:int,part_nr:int,nr_parts:int):bat[:any_1] +address mvc_bind_idxbat_wrap; +pattern sql.emptycolumnidx(mvc:int,schema:str,table:str,index:str,access:int) (uid:bat[:oid],uval:bat[:any_1]) +address mvc_bind_idxbat_wrap; +pattern sql.emptycolumnidx(mvc:int,schema:str,table:str,index:str,access:int):bat[:any_1] +address mvc_bind_idxbat_wrap; # 14:39:23 > # 14:39:23 > "Done." 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 @@ -10507,7 +10507,6 @@ Ready. [ "optimizer", "aliases", "pattern optimizer.aliases(mod:str,fcn:str):str ", "OPTwrapper;", "Alias removal optimizer" ] [ "optimizer", "candidates", "pattern optimizer.candidates():str ", "OPTwrapper;", "" ] [ "optimizer", "candidates", "pattern optimizer.candidates(mod:str,fcn:str):str ", "OPTwrapper;", "Mark candidate list variables" ] -[ "optimizer", "clrDebug", "pattern optimizer.clrDebug():void ", "QOTclrdebugOptimizers;", "" ] [ "optimizer", "coercions", "pattern optimizer.coercions():str ", "OPTwrapper;", "" ] [ "optimizer", "coercions", "pattern optimizer.coercions(mod:str,fcn:str):str ", "OPTwrapper;", "Handle simple type coercions" ] [ "optimizer", "commonTerms", "pattern optimizer.commonTerms():str ", "OPTwrapper;", "" ] @@ -10524,6 +10523,8 @@ Ready. [ "optimizer", "deadcode", "pattern optimizer.deadcode(mod:str,fcn:str):str ", "OPTwrapper;", "Dead code optimizer" ] [ "optimizer", "derivePath", "pattern optimizer.derivePath():str ", "OPTwrapper;", "" ] [ "optimizer", "derivePath", "pattern optimizer.derivePath(mod:str,fcn:str):str ", "OPTwrapper;", "Join path constructor" ] +[ "optimizer", "emptybind", "pattern optimizer.emptybind():str ", "OPTwrapper;", "" ] +[ "optimizer", "emptybind", "pattern optimizer.emptybind(mod:str,fcn:str):str ", "OPTwrapper;", "Evaluate empty set expressions." ] [ "optimizer", "evaluate", "pattern optimizer.evaluate():str ", "OPTwrapper;", "" ] [ "optimizer", "evaluate", "pattern optimizer.evaluate(mod:str,fcn:str):str ", "OPTwrapper;", "Evaluate constant expressions once." ] [ "optimizer", "factorize", "pattern optimizer.factorize():str ", "OPTwrapper;", "" ] @@ -10534,6 +10535,8 @@ Ready. [ "optimizer", "generator", "pattern optimizer.generator(mod:str,fcn:str):str ", "OPTwrapper;", "Sequence generator optimizer" ] [ "optimizer", "inline", "pattern optimizer.inline():str ", "OPTwrapper;", "" ] [ "optimizer", "inline", "pattern optimizer.inline(mod:str,fcn:str):str ", "OPTwrapper;", "Expand inline functions" ] +[ "optimizer", "jit", "pattern optimizer.jit():str ", "OPTwrapper;", "" ] +[ "optimizer", "jit", "pattern optimizer.jit(mod:str,fcn:str):str ", "OPTwrapper;", "Propagate candidate lists in just-in-time optimization" ] [ "optimizer", "joinselect", "pattern optimizer.joinselect():str ", "OPTwrapper;", "" ] [ "optimizer", "joinselect", "pattern optimizer.joinselect(mod:str,fcn:str):str ", "OPTwrapper;", "Replace select with join select" ] [ "optimizer", "json", "pattern optimizer.json():str ", "OPTwrapper;", "" ] @@ -10578,7 +10581,6 @@ Ready. [ "optimizer", "reorder", "pattern optimizer.reorder(mod:str,fcn:str):str ", "OPTwrapper;", "Reorder by dataflow dependencies" ] [ "optimizer", "selcrack", "pattern optimizer.selcrack():str ", "OPTwrapper;", "" ] [ "optimizer", "selcrack", "pattern optimizer.selcrack(mod:str,fcn:str):str ", "OPTwrapper;", "Selection cracking" ] -[ "optimizer", "setDebug", "pattern optimizer.setDebug():void ", "QOTdebugOptimizers;", "" ] [ "optimizer", "showFlowGraph", "pattern optimizer.showFlowGraph(M:str,F:str,s:str):void ", "QOTshowFlowGraph;", "Dump the data flow of the function \n\tM.F in a format recognizable by the \n\tcommand 'dot' on the file s" ] [ "optimizer", "showPlan", "pattern optimizer.showPlan():void ", "QOTshowPlan;", "Illustrate the plan derived so far" ] [ "optimizer", "showPlan", "pattern optimizer.showPlan(M:str,F:str,s:str):void ", "QOTshowPlan;", "" ] @@ -10751,6 +10753,14 @@ Ready. [ "sql", "dump_cache", "pattern sql.dump_cache() (query:bat[:str],count:bat[:int]) ", "dump_cache;", "dump the content of the query cache" ] [ "sql", "dump_opt_stats", "pattern sql.dump_opt_stats() (rewrite:bat[:str],count:bat[:int]) ", "dump_opt_stats;", "dump the optimizer rewrite statistics" ] [ "sql", "dump_trace", "pattern sql.dump_trace() (event:bat[:int],clk:bat[:str],pc:bat[:str],thread:bat[:int],ticks:bat[:lng],rssMB:bat[:lng],vmMB:bat[:lng],reads:bat[:lng],writes:bat[:lng],minflt:bat[:lng],majflt:bat[:lng],nvcsw:bat[:lng],stmt:bat[:str]) ", "dump_trace;", "dump the trace statistics" ] +[ "sql", "emptybind", "pattern sql.emptybind(mvc:int,schema:str,table:str,column:str,access:int) (uid:bat[:oid],uval:bat[:any_1]) ", "mvc_bind_wrap;", "" ] +[ "sql", "emptybind", "pattern sql.emptybind(mvc:int,schema:str,table:str,column:str,access:int):bat[:any_1] ", "mvc_bind_wrap;", "" ] +[ "sql", "emptybind", "pattern sql.emptybind(mvc:int,schema:str,table:str,column:str,access:int,part_nr:int,nr_parts:int) (uid:bat[:oid],uval:bat[:any_1]) ", "mvc_bind_wrap;", "" ] +[ "sql", "emptybind", "pattern sql.emptybind(mvc:int,schema:str,table:str,column:str,access:int,part_nr:int,nr_parts:int):bat[:any_1] ", "mvc_bind_wrap;", "" ] +[ "sql", "emptybindidx", "pattern sql.emptybindidx(mvc:int,schema:str,table:str,index:str,access:int) (uid:bat[:oid],uval:bat[:any_1]) ", "mvc_bind_idxbat_wrap;", "" ] +[ "sql", "emptybindidx", "pattern sql.emptybindidx(mvc:int,schema:str,table:str,index:str,access:int):bat[:any_1] ", "mvc_bind_idxbat_wrap;", "" ] +[ "sql", "emptybindidx", "pattern sql.emptybindidx(mvc:int,schema:str,table:str,index:str,access:int,part_nr:int,nr_parts:int) (uid:bat[:oid],uval:bat[:any_1]) ", "mvc_bind_idxbat_wrap;", "" ] +[ "sql", "emptybindidx", "pattern sql.emptybindidx(mvc:int,schema:str,table:str,index:str,access:int,part_nr:int,nr_parts:int):bat[:any_1] ", "mvc_bind_idxbat_wrap;", "" ] [ "sql", "epilogue", "command sql.epilogue():void ", "SQLepilogue;", "" ] [ "sql", "eval", "pattern sql.eval(cmd:str):void ", "SQLstatement;", "Compile and execute a single sql statement" ] [ "sql", "eval", "pattern sql.eval(cmd:str,output:bit):void ", "SQLstatement;", "Compile and execute a single sql statement (and optionaly send output on the output stream)" ] @@ -11002,7 +11012,7 @@ Ready. [ "url", "url", "command url.url(s:str):url ", "URLnew;", "Create an URL from a string literal" ] [ "url", "url", "command url.url(s:url):url ", "URLnoop;", "Create an URL from a string literal" ] [ "user", "main", "function user.main():void;", "", "" ] -[ "user", "s1_1", "function user.s1_1():void;", "", "" ] +[ "user", "s2_1", "function user.s2_1():void;", "", "" ] [ "user", "sql.init", "function user.sql.init():void;", "", "" ] [ "uuid", "#cmp", "command uuid.#cmp():void ", "UUIDcompare;", "" ] [ "uuid", "#fromstr", "command uuid.#fromstr():void ", "UUIDfromString;", "" ] diff --git a/clients/Tests/SQL-dump.SQL.py b/clients/Tests/SQL-dump.SQL.py --- a/clients/Tests/SQL-dump.SQL.py +++ b/clients/Tests/SQL-dump.SQL.py @@ -61,7 +61,7 @@ sys.stderr.write(err) # add queries to dump the system tables, but avoid dumping IDs since _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list