Changeset: 07595c56aa4f for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=07595c56aa4f Added Files: common/utils/revision.c sql/benchmarks/tpcds/Tests/11.reqtests sql/benchmarks/tpcds/Tests/11.sql sql/benchmarks/tpcds/Tests/38.reqtests sql/benchmarks/tpcds/Tests/38.sql sql/benchmarks/tpcds/Tests/72.reqtests sql/benchmarks/tpcds/Tests/72.sql sql/benchmarks/tpcds/Tests/83.reqtests sql/benchmarks/tpcds/Tests/83.sql sql/benchmarks/tpcds/Tests/98.reqtests sql/benchmarks/tpcds/Tests/98.sql sql/benchmarks/tpcds/Tests/99.reqtests sql/benchmarks/tpcds/Tests/99.sql sql/benchmarks/tpcds/Tests/All sql/benchmarks/tpcds/Tests/alter.reqtests sql/benchmarks/tpcds/Tests/alter.sql sql/benchmarks/tpcds/Tests/alter.stable.err sql/benchmarks/tpcds/Tests/alter.stable.out sql/benchmarks/tpcds/Tests/check0.reqtests sql/benchmarks/tpcds/Tests/check0.sql sql/benchmarks/tpcds/Tests/check0.stable.err sql/benchmarks/tpcds/Tests/check0.stable.out sql/benchmarks/tpcds/Tests/check1.reqtests sql/benchmarks/tpcds/Tests/check1.sql sql/benchmarks/tpcds/Tests/check1.stable.err sql/benchmarks/tpcds/Tests/check1.stable.out sql/benchmarks/tpcds/Tests/create.sql sql/benchmarks/tpcds/Tests/create.stable.err sql/benchmarks/tpcds/Tests/create.stable.out sql/benchmarks/tpcds/Tests/drop.sql sql/benchmarks/tpcds/Tests/drop.stable.err sql/benchmarks/tpcds/Tests/drop.stable.out sql/benchmarks/tpcds/Tests/load.reqtests sql/benchmarks/tpcds/Tests/load.sql.in sql/benchmarks/tpcds/Tests/load.stable.err sql/benchmarks/tpcds/Tests/load.stable.out sql/test/BugTracker-2018/Tests/alter-sequence-subquery.Bug-6657.sql sql/test/BugTracker-2018/Tests/alter-sequence-subquery.Bug-6657.stable.err sql/test/BugTracker-2018/Tests/alter-sequence-subquery.Bug-6657.stable.out sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.py sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.stable.err sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.stable.out sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.stable.err sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.stable.out sql/test/BugTracker-2018/Tests/procedure-create-table.Bug-6604.stable.err sql/test/BugTracker-2018/Tests/procedure-create-table.Bug-6604.stable.out sql/test/BugTracker-2018/Tests/quantile-crash.Bug-6658.sql sql/test/BugTracker-2018/Tests/quantile-crash.Bug-6658.stable.err sql/test/BugTracker-2018/Tests/quantile-crash.Bug-6658.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out.int128 sql/test/testdb-reload/Tests/All sql/test/testdb-reload/Tests/reload.py sql/test/testdb-reload/Tests/reload.stable.err sql/test/testdb-reload/Tests/reload.stable.out sql/test/testdb-reload/Tests/reload.timeout sql/test/testdb/Tests/dump-nogeom.reqtests sql/test/testdb/Tests/dump-nogeom.sql sql/test/testdb/Tests/dump-nogeom.stable.err sql/test/testdb/Tests/dump-nogeom.stable.out sql/test/testdb/Tests/dump.reqtests sql/test/testdb/Tests/dump.sql sql/test/testdb/Tests/dump.stable.err sql/test/testdb/Tests/dump.stable.out sql/test/testdb/Tests/dump.timeout sql/test/testdb/Tests/load-geom.reqtests sql/test/testdb/Tests/load-geom.sql sql/test/testdb/Tests/load-geom.stable.err sql/test/testdb/Tests/load-geom.stable.out sql/test/testdb/Tests/load.sql sql/test/testdb/Tests/load.stable.err sql/test/testdb/Tests/load.stable.out sql/test/testdb/Tests/load.timeout sql/test/testdb/Tests/package-hge.py sql/test/testdb/Tests/package-hge.stable.err sql/test/testdb/Tests/package-hge.stable.out.int128 sql/test/testdb/Tests/package.py sql/test/testdb/Tests/package.reqtests sql/test/testdb/Tests/package.stable.err sql/test/testdb/Tests/package.stable.out Removed Files: sql/test/testdb/Tests/testdb-dump.reqtests sql/test/testdb/Tests/testdb-dump.sql sql/test/testdb/Tests/testdb-dump.stable.err sql/test/testdb/Tests/testdb-dump.stable.out sql/test/testdb/Tests/testdb-dump.timeout sql/test/testdb/Tests/testdb-load.sql sql/test/testdb/Tests/testdb-load.stable.err sql/test/testdb/Tests/testdb-load.stable.out sql/test/testdb/Tests/testdb-load.timeout sql/test/testdb/Tests/testdb-package-hge.py sql/test/testdb/Tests/testdb-package-hge.stable.err sql/test/testdb/Tests/testdb-package-hge.stable.out.int128 sql/test/testdb/Tests/testdb-package.py sql/test/testdb/Tests/testdb-package.reqtests sql/test/testdb/Tests/testdb-package.stable.err sql/test/testdb/Tests/testdb-package.stable.out Modified Files: MonetDB.spec NT/Makefile bootstrap clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out clients/mapiclient/dump.c clients/mapiclient/mclient.c clients/mapiclient/mhelp.c clients/mapiclient/msqldump.c common/utils/Makefile.ag common/utils/mutils.h debian/monetdb5-server.install debian/monetdb5-sql.install gdk/ChangeLog gdk/gdk.h gdk/gdk_aggr.c gdk/gdk_atoms.c gdk/gdk_atoms.h gdk/gdk_batop.c gdk/gdk_bbp.c gdk/gdk_calc.c gdk/gdk_cand.h gdk/gdk_firstn.c gdk/gdk_imprints.c gdk/gdk_orderidx.c gdk/gdk_private.h gdk/gdk_qsort.c gdk/gdk_qsort_impl.h gdk/gdk_search.c gdk/gdk_select.c gdk/gdk_ssort.c gdk/gdk_ssort_impl.h gdk/gdk_storage.c gdk/gdk_string.c gdk/gdk_system.c gdk/gdk_tm.c gdk/gdk_utils.c gdk/gdk_value.c geom/monetdb5/geom.c geom/monetdb5/geom.h geom/sql/conformance/Tests/T1.sql geom/sql/conformance/Tests/T1.stable.out geom/sql/conformance/Tests/T13.stable.out geom/sql/conformance/Tests/T14.stable.out geom/sql/conformance/Tests/T17.stable.out geom/sql/conformance/Tests/T18.stable.out geom/sql/conformance/Tests/T23.stable.out geom/sql/conformance/Tests/T24.stable.out geom/sql/conformance/Tests/T27.stable.out geom/sql/conformance/Tests/T29.stable.out geom/sql/conformance/Tests/T31.stable.out geom/sql/conformance/Tests/T34.stable.out geom/sql/conformance/Tests/T47.stable.out geom/sql/conformance/Tests/T48.stable.out geom/sql/conformance/Tests/T49.stable.out geom/sql/conformance/Tests/T50.stable.out geom/sql/conformance/Tests/T52.stable.out geom/sql/conformance/Tests/T8.stable.out geom/sql/functions/Tests/ST_AsEWKT.stable.out geom/sql/functions/Tests/ST_AsText.stable.out geom/sql/pg_regression/Tests/boundary.stable.out geom/sql/pg_regression/Tests/delaunaytriangles.stable.out monetdb5/ChangeLog monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows monetdb5/mal/Tests/tst1200.stable.out monetdb5/mal/Tests/tst1205.stable.out monetdb5/mal/Tests/tst1502.malC monetdb5/mal/Tests/tst233.malC monetdb5/mal/Tests/tst234.malC monetdb5/mal/Tests/tst235.malC monetdb5/mal/Tests/tst903.malC monetdb5/mal/Tests/tst903.stable.out monetdb5/mal/mal_atom.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_parser.c monetdb5/mal/mal_profiler.c monetdb5/modules/atoms/Tests/xml10.malC monetdb5/modules/atoms/batxml.c monetdb5/modules/atoms/blob.c monetdb5/modules/atoms/blob.h monetdb5/modules/atoms/color.c monetdb5/modules/atoms/color.h monetdb5/modules/atoms/identifier.c monetdb5/modules/atoms/inet.c monetdb5/modules/atoms/json.c monetdb5/modules/atoms/json.h monetdb5/modules/atoms/mtime.c monetdb5/modules/atoms/mtime.h monetdb5/modules/atoms/url.c monetdb5/modules/atoms/url.h monetdb5/modules/atoms/uuid.c monetdb5/modules/atoms/xml.c monetdb5/modules/atoms/xml.h monetdb5/modules/kernel/Tests/select.malC monetdb5/modules/kernel/Tests/time01.malC monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/algebra.h monetdb5/modules/kernel/algebra.mal monetdb5/modules/kernel/bat5.c monetdb5/modules/mal/Tests/inspect05.malC monetdb5/modules/mal/Tests/orderidx00.malC monetdb5/modules/mal/Tests/orderidx04.malC monetdb5/modules/mal/Tests/pqueue.malC monetdb5/modules/mal/Tests/pqueue2.malC monetdb5/modules/mal/Tests/pqueue3.malC monetdb5/modules/mal/mal_io.c monetdb5/modules/mal/remote.c monetdb5/modules/mal/tablet.c monetdb5/optimizer/Tests/DCexample2.malC monetdb5/optimizer/Tests/reorder00.malC monetdb5/optimizer/Tests/reorder00.stable.out monetdb5/optimizer/Tests/tst4700.malC monetdb5/optimizer/opt_costModel.c monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h monetdb5/optimizer/opt_support.c rpm.mk.in sql/ChangeLog sql/backends/monet5/UDF/capi/capi.c sql/backends/monet5/UDF/pyapi/conversion.c sql/backends/monet5/UDF/pyapi/convert_loops.h sql/backends/monet5/UDF/pyapi/type_conversion.c sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql_cast.c sql/backends/monet5/sql_cat.c sql/backends/monet5/sql_result.c sql/backends/monet5/sql_result.h sql/backends/monet5/sql_statement.c sql/backends/monet5/sql_statement.h sql/backends/monet5/sql_statistics.c sql/backends/monet5/sql_upgrades.c sql/backends/monet5/vaults/bam/Tests/query1.1.sql sql/backends/monet5/vaults/bam/Tests/query1.1.stable.out sql/backends/monet5/vaults/bam/Tests/query2.1.stable.out sql/backends/monet5/vaults/bam/Tests/query2.10.stable.out sql/backends/monet5/vaults/bam/Tests/query2.11.sql sql/backends/monet5/vaults/bam/Tests/query2.11.stable.out sql/backends/monet5/vaults/bam/Tests/query2.2.sql sql/backends/monet5/vaults/bam/Tests/query2.2.stable.out sql/backends/monet5/vaults/bam/Tests/query2.2.stable.out.int128 sql/backends/monet5/vaults/bam/Tests/query2.6.sql sql/backends/monet5/vaults/bam/Tests/query2.6.stable.out sql/backends/monet5/vaults/bam/bam_export.c sql/backends/monet5/wlr.c sql/common/sql_list.c sql/common/sql_string.c sql/common/sql_string.h sql/include/sql_catalog.h sql/include/sql_relation.h sql/jdbc/tests/Tests/BugResultSetMetaData_Bug_6183.stable.out sql/scripts/75_storagemodel.sql sql/server/rel_dump.c sql/server/rel_exp.c sql/server/rel_optimizer.c sql/server/rel_psm.c sql/server/rel_select.c sql/server/rel_sequence.c sql/server/rel_updates.c sql/server/sql_atom.c sql/server/sql_parser.y sql/server/sql_privileges.c sql/server/sql_scan.c sql/storage/bat/bat_table.c sql/storage/bat/res_table.c sql/storage/store.c sql/test/BugDay_2005-10-06_2.9.3/Tests/UNION_JOIN_vs_plain_set_UNION-2.SF-920585.sql sql/test/BugDay_2005-10-06_2.9.3/Tests/UNION_JOIN_vs_plain_set_UNION-2.SF-920585.stable.out sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.stable.err sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.stable.out.Windows sql/test/BugTracker-2009/Tests/drop-sequence-crash.SF-2854195.stable.err sql/test/BugTracker-2009/Tests/drop-sequence-crash.SF-2854195.stable.out sql/test/BugTracker-2009/Tests/use_order_column_first.SF-2686008.stable.out sql/test/BugTracker-2010/Tests/LIMIT_OFFSET_big-endian.Bug-2622.stable.out sql/test/BugTracker-2011/Tests/interrupted-initialization.Bug-2875.py sql/test/BugTracker-2012/Tests/strange_escaping_in_csv.Bug-2133.stable.out sql/test/BugTracker-2013/Tests/create_table_with_func.Bug-3286.sql sql/test/BugTracker-2013/Tests/create_table_with_func.Bug-3286.stable.out sql/test/BugTracker-2013/Tests/env_errors.Bug-3370.stable.err sql/test/BugTracker-2014/Tests/oid-table-assert.Bug-3514.sql sql/test/BugTracker-2015/Tests/alter-table.Bug-3828-part1.stable.out sql/test/BugTracker-2015/Tests/crash.Bug-3736.stable.out sql/test/BugTracker-2015/Tests/msqldump-merge-and-remote-tables.Bug-3774.stable.out sql/test/BugTracker-2015/Tests/quantile_function_resolution.Bug-3773.stable.out sql/test/BugTracker-2016/Tests/assert-on-push-project-up.Bug-6077.stable.out sql/test/BugTracker-2016/Tests/storagemodel.sql sql/test/BugTracker-2016/Tests/storagemodel.stable.out sql/test/BugTracker-2017/Tests/crash-in-topn.Bug-6478.sql sql/test/BugTracker-2017/Tests/crash-on-limit-rename.Bug-6502.sql sql/test/BugTracker-2017/Tests/crash_correlated_subqueries_in_select.Bug-6254.stable.out sql/test/BugTracker-2017/Tests/create_view_order_by.Bug-3465.sql sql/test/BugTracker-2017/Tests/create_view_order_by.Bug-3465.stable.out sql/test/BugTracker-2017/Tests/exist-bigint-missing.Bug-6315.sql sql/test/BugTracker-2017/Tests/exist-bigint-missing.Bug-6315.stable.out sql/test/BugTracker-2017/Tests/sqlsmith.Bug-6423.stable.out sql/test/BugTracker-2018/Tests/All sql/test/BugTracker-2018/Tests/case_with_orderby_limit.Bug-6512.sql sql/test/BugTracker-2018/Tests/dependency_column_on_sequence.Bug-6618.SQL.py sql/test/BugTracker-2018/Tests/dependency_column_on_sequence.Bug-6618.stable.err sql/test/BugTracker-2018/Tests/dependency_column_on_sequence.Bug-6618.stable.out sql/test/BugTracker-2018/Tests/groupby_having_orderby_count.Bug-6624.sql sql/test/BugTracker-2018/Tests/groupby_having_orderby_count.Bug-6624.stable.out sql/test/BugTracker-2018/Tests/in-subquery-having-Bug-6651.sql sql/test/BugTracker-2018/Tests/in-subquery-having-Bug-6651.stable.out sql/test/BugTracker-2018/Tests/prepared-statement-with-udf.Bug-6650.sql sql/test/BugTracker-2018/Tests/procedure-create-table.Bug-6604.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.out sql/test/Dependencies/Tests/Dependencies.stable.out sql/test/Dependencies/Tests/Dependencies.stable.out.int128 sql/test/Dependencies/Tests/dependency_loop.stable.out sql/test/Dependencies/Tests/dependency_loop.stable.out.int128 sql/test/Dump/Tests/dump.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-0join-query.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-0join-view.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-query.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-view.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-view.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/Tests/identifiers.stable.err sql/test/Tests/identifiers.stable.out sql/test/Tests/order_by_complex_exp.stable.out sql/test/Tests/rank.stable.out sql/test/Tests/systemfunctions.stable.out sql/test/Tests/systemfunctions.stable.out.int128 sql/test/Users/Tests/grantMonetdb.stable.err sql/test/Users/Tests/grantMonetdbToSchemaOwner.Bug-3771.stable.err sql/test/Users/Tests/grantRole.Bug-3772.stable.err sql/test/Users/Tests/renameUser.stable.err sql/test/Users/Tests/role.stable.err sql/test/Users/Tests/role2.stable.err sql/test/Users/Tests/schema.stable.err sql/test/bugs/Tests/innerjoin_multiple-bug-sf-943661.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.SQL.py 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/json/Tests/coercions.sql sql/test/json/Tests/coercions.stable.out sql/test/json/Tests/jsonvalidity.Bug-3753.stable.out sql/test/mergetables/Tests/sqlsmith-apply-outer-join-or.sql sql/test/order_by_complex_exp.sql sql/test/orderidx/Tests/imprints_all_types.stable.out sql/test/orderidx/Tests/oidx_all_types.stable.out sql/test/orderidx/Tests/simpletable.stable.out sql/test/orderidx/Tests/simpletable.stable.out.32bit sql/test/orderidx/Tests/smalltable.stable.out sql/test/orderidx/Tests/smalltable.stable.out.32bit sql/test/pg_regress/Tests/box.stable.out sql/test/pg_regress/Tests/oid.sql sql/test/pg_regress/Tests/oid.stable.err.32bit sql/test/pg_regress/Tests/oid.stable.err.int128 sql/test/pg_regress/Tests/oid.stable.out sql/test/pg_regress/Tests/oid.stable.out.32bit sql/test/pg_regress/Tests/path.stable.out sql/test/pg_regress/Tests/point.sql sql/test/pg_regress/Tests/point.stable.out sql/test/pg_regress/Tests/polygon.stable.out sql/test/pg_regress/Tests/vacuum.stable.out sql/test/pg_regress/Tests/without_oid.stable.out sql/test/pg_regress/Tests/without_oid.stable.out.32bit sql/test/rank.sql sql/test/remote/Tests/ssbm.SQL.py sql/test/sys-schema/Tests/check_ForeignKey_referential_integrity.sql sql/test/sys-schema/Tests/check_ForeignKey_referential_integrity.stable.out sql/test/sys-schema/Tests/check_PrimaryKey_uniqueness.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/dump.stable.out.int128 sql/test/testdb-upgrade/Tests/dump.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128 sql/test/testdb/Tests/All sql/test/wlcr/Tests/wlc01.py sql/test/wlcr/Tests/wlc100.py sql/test/wlcr/Tests/wlc20.py sql/test/wlcr/Tests/wlc21.py sql/test/wlcr/Tests/wlc30.py sql/test/wlcr/Tests/wlc40.py sql/test/wlcr/Tests/wlc50.py sql/test/wlcr/Tests/wlc70.py sql/test/wlcr/Tests/wlr01.py sql/test/wlcr/Tests/wlr100.py sql/test/wlcr/Tests/wlr20.py sql/test/wlcr/Tests/wlr30.py sql/test/wlcr/Tests/wlr40.py sql/test/wlcr/Tests/wlr50.py sql/test/wlcr/Tests/wlr70.py testing/malcheck.py testing/process.py tools/merovingian/client/monetdb.c tools/merovingian/daemon/argvcmds.c tools/merovingian/daemon/controlrunner.c tools/merovingian/daemon/merovingian.c tools/merovingian/daemon/merovingian.h tools/merovingian/daemon/proxy.c tools/mserver/monet_version.c.in tools/mserver/mserver5.c Branch: data-vaults Log Message:
Merge with default diffs (truncated from 169606 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -690,7 +690,6 @@ exit 0 %{_libdir}/monetdb5/lib_generator.so %{_libdir}/monetdb5/lib_opt_sql_append.so %{_libdir}/monetdb5/lib_udf.so -%{_libdir}/monetdb5/lib_vault.so %doc %{_mandir}/man1/mserver5.1.gz %dir %{_datadir}/doc/MonetDB %docdir %{_datadir}/doc/MonetDB @@ -781,7 +780,6 @@ use SQL with MonetDB, you will need to i %config(noreplace) %attr(644,root,root) %{_sysconfdir}/logrotate.d/monetdbd %{_libdir}/monetdb5/autoload/??_sql.mal %{_libdir}/monetdb5/lib_sql.so -%{_libdir}/monetdb5/*.sql %dir %{_libdir}/monetdb5/createdb %if %{with geos} %exclude %{_libdir}/monetdb5/createdb/*_geom.sql diff --git a/NT/Makefile b/NT/Makefile --- a/NT/Makefile +++ b/NT/Makefile @@ -19,7 +19,7 @@ all: _all !INCLUDE "$(NT)\rules.msc" -_all: update_winconfig_conds_py "$(srcdir)\Makefile.msc" monetdb_config.h unistd.h .monetdb +_all: update_winconfig_conds_py "$(srcdir)\Makefile.msc" monetdb_config.h unistd.h .monetdb monetdb_hgversion.h $(MAKE) /nologo /f "$(srcdir)\Makefile.msc" "prefix=$(prefix)" "bits=$(bits)" all install: targetdirs all @@ -34,6 +34,9 @@ install: targetdirs all monetdb_config.h: "$(TOPDIR)\winconfig_conds.py" "$(NT)\monetdb_config.h.in" $(CONFIGURE) "$(NT)\monetdb_config.h.in" > monetdb_config.h +monetdb_hgversion.h: + $(ECHO) #undef MERCURIAL_ID > monetdb_hgversion.h + unistd.h: $(ECHO) #ifndef UNISTD_H > unistd.h $(ECHO) #define UNISTD_H >> unistd.h diff --git a/bootstrap b/bootstrap --- a/bootstrap +++ b/bootstrap @@ -62,6 +62,8 @@ aclocal$amv ${_m4_extra_dirs} || exit $? autoheader || exit $? automake$amv --add-missing --copy --foreign || exit $? autoconf || exit $? +# a bit hacky: add dependency on monetdb_hgversion.h for common/utils/revision.c +sed -i~ '/revision.*:/s;$; ../../monetdb_hgversion.h;' common/utils/Makefile.am if [ -f buildtools/conf/install-sh -a ! -x buildtools/conf/install-sh ]; then chmod +x buildtools/conf/install-sh fi 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 @@ -527,12 +527,12 @@ Ready. [ "algebra", "exist", "command algebra.exist(b:bat[:any_1], val:any_1):bit ", "ALGexist;", "Returns whether 'val' occurs in b." ] [ "algebra", "fetch", "command algebra.fetch(b:bat[:any_1], x:oid):any_1 ", "ALGfetchoid;", "Returns the value of the BUN at x-th position with 0 <= x < b.count" ] [ "algebra", "find", "command algebra.find(b:bat[:any_1], t:any_1):oid ", "ALGfind;", "Returns the index position of a value. If no such BUN exists return OID-nil." ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], n:lng, asc:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], n:lng, asc:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], g:bat[:oid], n:lng, asc:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], g:bat[:oid], n:lng, asc:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], n:lng, asc:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], n:lng, asc:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], n:lng, asc:bit, nilslast:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], n:lng, asc:bit, nilslast:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], g:bat[:oid], n:lng, asc:bit, nilslast:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], g:bat[:oid], n:lng, asc:bit, nilslast:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], n:lng, asc:bit, nilslast:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], n:lng, asc:bit, nilslast:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] [ "algebra", "groupby", "command algebra.groupby(gids:bat[:oid], cnts:bat[:lng]):bat[:oid] ", "ALGgroupby;", "Produces a new BAT with groups identified by the head column. The result contains tail times the head value, ie the tail contains the result group sizes." ] [ "algebra", "ilike", "command algebra.ilike(s:str, pat:str):bit ", "PCREilike2;", "" ] [ "algebra", "ilike", "command algebra.ilike(s:str, pat:str, esc:str):bit ", "PCREilike3;", "" ] @@ -569,15 +569,15 @@ Ready. [ "algebra", "slice", "command algebra.slice(b:bat[:any_1], x:int, y:int):bat[:any_1] ", "ALGslice_int;", "Return the slice with the BUNs at position x till y." ] [ "algebra", "slice", "command algebra.slice(b:bat[:any_1], x:lng, y:lng):bat[:any_1] ", "ALGslice_lng;", "Return the slice with the BUNs at position x till y." ] [ "algebra", "slice", "command algebra.slice(b:bat[:any_1], x:oid, y:oid):bat[:any_1] ", "ALGslice_oid;", "Return the slice based on head oid x till y (exclusive)." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, stable:bit):bat[:any_1] ", "ALGsort11;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort12;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort13;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, stable:bit):bat[:any_1] ", "ALGsort21;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort22;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort23;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, stable:bit):bat[:any_1] ", "ALGsort31;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort32;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort33;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, nilslast:bit, stable:bit):bat[:any_1] ", "ALGsort11;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort12;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort13;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, nilslast:bit, stable:bit):bat[:any_1] ", "ALGsort21;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort22;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort23;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, nilslast:bit, stable:bit):bat[:any_1] ", "ALGsort31;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort32;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort33;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] [ "algebra", "subslice", "command algebra.subslice(b:bat[:any_1], x:lng, y:lng):bat[:oid] ", "ALGsubslice_lng;", "Return the oids of the slice with the BUNs at position x till y." ] [ "algebra", "thetajoin", "command algebra.thetajoin(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], op:int, nil_matches:bit, estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGthetajoin;", "Theta join with candidate lists" ] [ "algebra", "thetaselect", "command algebra.thetaselect(b:bat[:any_1], val:any_1, op:str):bat[:oid] ", "ALGthetaselect1;", "Select all head values for which the tail value obeys the relation\n\tvalue OP VAL.\n\tInput is a dense-headed BAT, output is a dense-headed BAT with in\n\tthe tail the head value of the input BAT for which the\n\trelationship holds. The output BAT is sorted on the tail value." ] 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 @@ -631,12 +631,12 @@ Ready. [ "algebra", "exist", "command algebra.exist(b:bat[:any_1], val:any_1):bit ", "ALGexist;", "Returns whether 'val' occurs in b." ] [ "algebra", "fetch", "command algebra.fetch(b:bat[:any_1], x:oid):any_1 ", "ALGfetchoid;", "Returns the value of the BUN at x-th position with 0 <= x < b.count" ] [ "algebra", "find", "command algebra.find(b:bat[:any_1], t:any_1):oid ", "ALGfind;", "Returns the index position of a value. If no such BUN exists return OID-nil." ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], n:lng, asc:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], n:lng, asc:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], g:bat[:oid], n:lng, asc:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], g:bat[:oid], n:lng, asc:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], n:lng, asc:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] -[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], n:lng, asc:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], n:lng, asc:bit, nilslast:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], n:lng, asc:bit, nilslast:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], g:bat[:oid], n:lng, asc:bit, nilslast:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], g:bat[:oid], n:lng, asc:bit, nilslast:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], n:lng, asc:bit, nilslast:bit, distinct:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] +[ "algebra", "firstn", "pattern algebra.firstn(b:bat[:any], s:bat[:oid], n:lng, asc:bit, nilslast:bit, distinct:bit):bat[:oid] ", "ALGfirstn;", "Calculate first N values of B with candidate list S" ] [ "algebra", "groupby", "command algebra.groupby(gids:bat[:oid], cnts:bat[:lng]):bat[:oid] ", "ALGgroupby;", "Produces a new BAT with groups identified by the head column. The result contains tail times the head value, ie the tail contains the result group sizes." ] [ "algebra", "ilike", "command algebra.ilike(s:str, pat:str):bit ", "PCREilike2;", "" ] [ "algebra", "ilike", "command algebra.ilike(s:str, pat:str, esc:str):bit ", "PCREilike3;", "" ] @@ -673,15 +673,15 @@ Ready. [ "algebra", "slice", "command algebra.slice(b:bat[:any_1], x:int, y:int):bat[:any_1] ", "ALGslice_int;", "Return the slice with the BUNs at position x till y." ] [ "algebra", "slice", "command algebra.slice(b:bat[:any_1], x:lng, y:lng):bat[:any_1] ", "ALGslice_lng;", "Return the slice with the BUNs at position x till y." ] [ "algebra", "slice", "command algebra.slice(b:bat[:any_1], x:oid, y:oid):bat[:any_1] ", "ALGslice_oid;", "Return the slice based on head oid x till y (exclusive)." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, stable:bit):bat[:any_1] ", "ALGsort11;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort12;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort13;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, stable:bit):bat[:any_1] ", "ALGsort21;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort22;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort23;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, stable:bit):bat[:any_1] ", "ALGsort31;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort32;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] -[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort33;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, nilslast:bit, stable:bit):bat[:any_1] ", "ALGsort11;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort12;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort13;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, nilslast:bit, stable:bit):bat[:any_1] ", "ALGsort21;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort22;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort23;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, nilslast:bit, stable:bit):bat[:any_1] ", "ALGsort31;", "Returns a copy of the BAT sorted on tail values.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid]) ", "ALGsort32;", "Returns a copy of the BAT sorted on tail values and a BAT that\n specifies how the input was reordered.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] +[ "algebra", "sort", "command algebra.sort(b:bat[:any_1], o:bat[:oid], g:bat[:oid], reverse:bit, nilslast:bit, stable:bit) (X_0:bat[:any_1], X_1:bat[:oid], X_2:bat[:oid]) ", "ALGsort33;", "Returns a copy of the BAT sorted on tail values, a BAT that specifies\n how the input was reordered, and a BAT with group information.\n The input and output are (must be) dense headed.\n The order is descending if the reverse bit is set.\n\t\t This is a stable sort if the stable bit is set." ] [ "algebra", "subslice", "command algebra.subslice(b:bat[:any_1], x:lng, y:lng):bat[:oid] ", "ALGsubslice_lng;", "Return the oids of the slice with the BUNs at position x till y." ] [ "algebra", "thetajoin", "command algebra.thetajoin(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], op:int, nil_matches:bit, estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGthetajoin;", "Theta join with candidate lists" ] [ "algebra", "thetaselect", "command algebra.thetaselect(b:bat[:any_1], val:any_1, op:str):bat[:oid] ", "ALGthetaselect1;", "Select all head values for which the tail value obeys the relation\n\tvalue OP VAL.\n\tInput is a dense-headed BAT, output is a dense-headed BAT with in\n\tthe tail the head value of the input BAT for which the\n\trelationship holds. The output BAT is sorted on the tail value." ] 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 @@ -8,13 +8,13 @@ stdout of test 'exports` in directory 'c # gdk int ALIGNsynced(BAT *b1, BAT *b2); int ATOMallocate(const char *nme); -ptr ATOMdup(int id, const void *val); +void *ATOMdup(int id, const void *val); bte ATOMelmshift(int sz); char *ATOMformat(int id, const void *val); int ATOMindex(const char *nme); size_t ATOMlen(int id, const void *v); str ATOMname(int id); -ptr ATOMnil(int id); +void *ATOMnil(int id); int ATOMprint(int id, const void *val, stream *fd); gdk_return BATappend(BAT *b, BAT *n, BAT *s, bool force) __attribute__((__warn_unused_result__)); void BATassertProps(BAT *b); @@ -116,7 +116,7 @@ BAT *BATdense(oid hseq, oid tseq, BUN cn BAT *BATdiff(BAT *l, BAT *r, BAT *sl, BAT *sr, bool nil_matches, BUN estimate); gdk_return BATextend(BAT *b, BUN newcap) __attribute__((__warn_unused_result__)); void BATfakeCommit(BAT *b); -gdk_return BATfirstn(BAT **topn, BAT **gids, BAT *b, BAT *cands, BAT *grps, BUN n, bool asc, bool distinct) __attribute__((__warn_unused_result__)); +gdk_return BATfirstn(BAT **topn, BAT **gids, BAT *b, BAT *cands, BAT *grps, BUN n, bool asc, bool nilslast, bool distinct) __attribute__((__warn_unused_result__)); int 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__)); @@ -172,7 +172,7 @@ void BATsetcapacity(BAT *b, BUN cnt); void BATsetcount(BAT *b, BUN cnt); void BATsetprop(BAT *b, enum prop_t idx, int type, const void *v); BAT *BATslice(BAT *b, BUN low, BUN high); -gdk_return BATsort(BAT **sorted, BAT **order, BAT **groups, BAT *b, BAT *o, BAT *g, bool reverse, bool stable) __attribute__((__warn_unused_result__)); +gdk_return BATsort(BAT **sorted, BAT **order, BAT **groups, BAT *b, BAT *o, BAT *g, bool reverse, bool nilslast, bool stable) __attribute__((__warn_unused_result__)); gdk_return BATstr_group_concat(ValPtr res, BAT *b, BAT *s, bool skip_nils, bool abort_on_error, bool nil_if_empty, const char *separator); gdk_return BATsubcross(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr) __attribute__((__warn_unused_result__)); gdk_return BATsum(void *res, int tp, BAT *b, BAT *s, bool skip_nils, bool abort_on_error, bool nil_if_empty); @@ -258,8 +258,7 @@ gdk_return GDKmmapfile(str buffer, size_ int GDKms(void); int GDKnr_threads; void GDKprepareExit(void); -void GDKqsort(void *restrict h, void *restrict t, const void *restrict base, size_t n, int hs, int ts, int tpe); -void GDKqsort_rev(void *restrict h, void *restrict t, const void *restrict base, size_t n, int hs, int ts, int tpe); +void GDKqsort(void *restrict h, void *restrict t, const void *restrict base, size_t n, int hs, int ts, int tpe, bool reverse, bool nilslast); void *GDKrealloc(void *pold, size_t size) __attribute__((__alloc_size__(2))) __attribute__((__warn_unused_result__)); void GDKregister(MT_Id pid); gdk_return GDKreleasemmap(void *ptr, size_t size, size_t id, str *msg); @@ -302,8 +301,8 @@ int MT_munmap(void *p, size_t len); int MT_path_absolute(const char *path); void MT_sleep_ms(unsigned int ms); void OIDXdestroy(BAT *b); -ssize_t OIDfromStr(const char *src, size_t *len, oid **dst); -ssize_t OIDtoStr(str *dst, size_t *len, const oid *src); +ssize_t OIDfromStr(const char *src, size_t *len, oid **dst, bool external); +ssize_t OIDtoStr(str *dst, size_t *len, const oid *src, bool external); BUN ORDERfnd(BAT *b, const void *v); BUN ORDERfndfirst(BAT *b, const void *v); BUN ORDERfndlast(BAT *b, const void *v); @@ -319,21 +318,21 @@ int THRgettid(void); int THRhighwater(void); Thread THRnew(const char *name); int THRprintf(stream *s, _In_z_ _Printf_format_string_ const char *format, ...) __attribute__((__format__(__printf__, 2, 3))); -void THRsetdata(int, ptr); +void THRsetdata(int, void *); void TMabort(void); gdk_return TMcommit(void); gdk_return TMsubcommit(BAT *bl); gdk_return TMsubcommit_list(bat *subcommit, int cnt); void VALclear(ValPtr v); int VALcmp(const ValRecord *p, const ValRecord *q); -ptr VALconvert(int typ, ValPtr t); +void *VALconvert(int typ, ValPtr t); ValPtr VALcopy(ValPtr dst, const ValRecord *src); void VALempty(ValPtr v); char *VALformat(const ValRecord *res); void *VALget(ValPtr v); ValPtr VALinit(ValPtr d, int tpe, const void *s); int VALisnil(const ValRecord *v); -ValPtr VALset(ValPtr v, int t, ptr p); +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); @@ -368,16 +367,16 @@ size_t _MT_npages; size_t _MT_pagesize; const union _dbl_nil_t _dbl_nil_; const union _flt_nil_t _flt_nil_; -ssize_t batFromStr(const char *src, size_t *len, bat **dst); -ssize_t batToStr(str *dst, size_t *len, const bat *src); -ssize_t bitFromStr(const char *src, size_t *len, bit **dst); -ssize_t bitToStr(str *dst, size_t *len, const bit *src); -ssize_t bteFromStr(const char *src, size_t *len, bte **dst); -ssize_t bteToStr(str *dst, size_t *len, const bte *src); +ssize_t batFromStr(const char *src, size_t *len, bat **dst, bool external); +ssize_t batToStr(str *dst, size_t *len, const bat *src, bool external); +ssize_t bitFromStr(const char *src, size_t *len, bit **dst, bool external); +ssize_t bitToStr(str *dst, size_t *len, const bit *src, bool external); +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; int closedir(DIR *dir); -ssize_t dblFromStr(const char *src, size_t *len, dbl **dst); -ssize_t dblToStr(str *dst, size_t *len, const dbl *src); +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); const dbl dbl_nil; char *dirname(char *path); int dlclose(void *handle); @@ -386,8 +385,8 @@ void *dlopen(const char *file, int mode) void *dlsym(void *handle, const char *name); size_t escapedStr(char *restrict dst, const char *restrict src, size_t dstlen, const char *sep1, const char *sep2, int quote); size_t escapedStrlen(const char *restrict src, const char *sep1, const char *sep2, int quote); -ssize_t fltFromStr(const char *src, size_t *len, flt **dst); -ssize_t fltToStr(str *dst, size_t *len, const flt *src); +ssize_t fltFromStr(const char *src, size_t *len, flt **dst, bool external); +ssize_t fltToStr(str *dst, size_t *len, const flt *src, bool external); const flt flt_nil; geomcatalogfix_fptr geomcatalogfix_get(void); void geomcatalogfix_set(geomcatalogfix_fptr); @@ -398,14 +397,14 @@ void geomversion_set(void); bat getBBPsize(void); char *get_bin_path(void); int gettimeofday(struct timeval *tv, int *ignore_zone); -ssize_t hgeFromStr(const char *src, size_t *len, hge **dst); -ssize_t hgeToStr(str *dst, size_t *len, const hge *src); +ssize_t hgeFromStr(const char *src, size_t *len, hge **dst, bool external); +ssize_t hgeToStr(str *dst, size_t *len, const hge *src, bool external); const hge hge_nil; -ssize_t intFromStr(const char *src, size_t *len, int **dst); -ssize_t intToStr(str *dst, size_t *len, const int *src); +ssize_t intFromStr(const char *src, size_t *len, int **dst, bool external); +ssize_t intToStr(str *dst, size_t *len, const int *src, bool external); const int int_nil; -ssize_t lngFromStr(const char *src, size_t *len, lng **dst); -ssize_t lngToStr(str *dst, size_t *len, const lng *src); +ssize_t lngFromStr(const char *src, size_t *len, lng **dst, bool external); +ssize_t lngToStr(str *dst, size_t *len, const lng *src, bool external); const lng lng_nil; gdk_return log_abort(logger *lg); gdk_return log_bat(logger *lg, BAT *b, const char *n, char tpe, oid id); @@ -431,6 +430,7 @@ int logger_sequence(logger *lg, int seq, gdk_return logger_upgrade_bat(logger *lg, const char *name, char tpe, oid id) __attribute__((__warn_unused_result__)); void logger_with_ids(logger *lg); void *mdlopen(const char *library, int mode); +const char *mercurial_revision(void); int mo_add_option(opt **Set, int setlen, opt_kind kind, const char *name, const char *value); int mo_builtin_settings(opt **Set); char *mo_find_option(opt *set, int setlen, const char *name); @@ -453,15 +453,15 @@ void pthread_sema_init(pthread_sema_t *s void pthread_sema_init(pthread_sema_t *s, int flag, int nresources); void pthread_sema_up(pthread_sema_t *s); void pthread_sema_up(pthread_sema_t *s); -ssize_t ptrFromStr(const char *src, size_t *len, ptr **dst); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list