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

Reply via email to