Changeset: bc8ee267dafe for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=bc8ee267dafe Added Files: common/utils/mstring.h sql/backends/monet5/sql_session.c sql/backends/monet5/sql_session.h sql/backends/monet5/sql_session.mal sql/jdbc/tests/Tests/Bug_IsValid_Timeout_Bug_6782.SQL.bat sql/jdbc/tests/Tests/Bug_IsValid_Timeout_Bug_6782.SQL.sh sql/jdbc/tests/Tests/Bug_IsValid_Timeout_Bug_6782.stable.err sql/jdbc/tests/Tests/Bug_IsValid_Timeout_Bug_6782.stable.out sql/test/BugTracker-2019/Tests/avg-changes-value-scale.Bug-6783.sql sql/test/BugTracker-2019/Tests/avg-changes-value-scale.Bug-6783.stable.err sql/test/BugTracker-2019/Tests/avg-changes-value-scale.Bug-6783.stable.out sql/test/BugTracker-2019/Tests/index-insert-crash.Bug-6781.stable.err sql/test/BugTracker-2019/Tests/index-insert-crash.Bug-6781.stable.out sql/test/BugTracker-2019/Tests/isaUUID.Bug-6784.sql sql/test/BugTracker-2019/Tests/isaUUID.Bug-6784.stable.err sql/test/BugTracker-2019/Tests/isaUUID.Bug-6784.stable.out sql/test/Users/Tests/sessioncontrol.sql sql/test/Users/Tests/sessioncontrol.stable.err sql/test/Users/Tests/sessioncontrol.stable.out Removed Files: sql/test/BugTracker-2016/Tests/set-negative-querytimeout.Bug-6070.sql sql/test/BugTracker-2016/Tests/set-negative-querytimeout.Bug-6070.stable.err sql/test/BugTracker-2016/Tests/set-negative-querytimeout.Bug-6070.stable.out Modified Files: .hgignore NT/Makefile NT/rules.msc buildtools/autogen/autogen/am.py buildtools/autogen/autogen/codegen.py buildtools/autogen/autogen/filesplit.py buildtools/autogen/autogen/msc.py buildtools/conf/rules.mk clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out clients/examples/C/Makefile.ag clients/mapiclient/Makefile.ag clients/mapiclient/dump.c clients/mapiclient/msqldump.c clients/mapiclient/tomograph.c clients/mapilib/Makefile.ag clients/mapilib/mapi.c clients/odbc/driver/Makefile.ag clients/odbc/driver/ODBCError.c clients/odbc/driver/ODBCGlobal.h clients/odbc/driver/ODBCUtil.c clients/odbc/driver/ODBCUtil.h clients/odbc/driver/SQLBrowseConnect.c clients/odbc/driver/SQLConnect.c clients/odbc/driver/SQLDriverConnect.c clients/odbc/driver/SQLGetDiagField.c clients/odbc/driver/SQLGetDiagRec.c clients/odbc/setup/Makefile.ag clients/odbc/setup/drvcfg.c clients/odbc/winsetup/Makefile.ag common/stream/stream.c common/utils/Makefile.ag common/utils/msabaoth.c common/utils/msabaoth.h common/utils/mutils.c configure.ag gdk/gdk.h gdk/gdk_align.c gdk/gdk_atoms.c gdk/gdk_bat.c gdk/gdk_batop.c gdk/gdk_bbp.c gdk/gdk_calc.c gdk/gdk_cand.c gdk/gdk_hash.c gdk/gdk_heap.c gdk/gdk_imprints.c gdk/gdk_join.c gdk/gdk_logger.c gdk/gdk_orderidx.c gdk/gdk_private.h gdk/gdk_project.c gdk/gdk_select.c gdk/gdk_storage.c gdk/gdk_string.c gdk/gdk_system.c gdk/gdk_system.h gdk/gdk_utils.c geom/monetdb5/geom.c monetdb5/ChangeLog monetdb5/mal/Tests/performanceTests/run monetdb5/mal/mal.c monetdb5/mal/mal.h monetdb5/mal/mal_atom.c monetdb5/mal/mal_client.c monetdb5/mal/mal_client.h monetdb5/mal/mal_dataflow.c monetdb5/mal/mal_debugger.c monetdb5/mal/mal_exception.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_private.h monetdb5/mal/mal_profiler.c monetdb5/mal/mal_resource.c monetdb5/mal/mal_resource.h monetdb5/mal/mal_runtime.c monetdb5/mal/mal_runtime.h monetdb5/mal/mal_session.c monetdb5/modules/atoms/json.c monetdb5/modules/atoms/str.c monetdb5/modules/atoms/strptime.c monetdb5/modules/atoms/url.c monetdb5/modules/atoms/uuid.c monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/algebra.h monetdb5/modules/kernel/algebra.mal monetdb5/modules/kernel/group.c monetdb5/modules/kernel/group.h monetdb5/modules/kernel/group.mal monetdb5/modules/mal/clients.c monetdb5/modules/mal/clients.mal monetdb5/modules/mal/sysmon.c monetdb5/modules/mal/sysmon.mal sql/NT/dump-restore.rst sql/backends/monet5/Makefile.ag sql/backends/monet5/UDF/pyapi/pyapi.c sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.mal sql/backends/monet5/sql_execute.c sql/backends/monet5/sql_optimizer.c sql/backends/monet5/sql_statement.c sql/backends/monet5/sql_upgrades.c sql/backends/monet5/vaults/bam/bam_wrapper.c sql/common/sql_types.c sql/include/sql_catalog.h sql/include/sql_mem.h sql/jdbc/tests/Tests/All sql/rel.txt sql/scripts/22_clients.sql sql/scripts/26_sysmon.sql sql/server/rel_dump.c sql/server/rel_exp.c sql/server/rel_optimizer.c sql/server/rel_partition.c sql/server/rel_propagate.c sql/server/rel_psm.c sql/server/rel_rel.c sql/server/rel_schema.c sql/server/rel_select.c sql/server/rel_unnest.c sql/server/rel_updates.c sql/server/rel_updates.h sql/server/sql_partition.c sql/storage/store.c sql/test/BugTracker-2008/Tests/too_many_nested_operators.SF-2102167.stable.err sql/test/BugTracker-2016/Tests/All sql/test/BugTracker-2016/Tests/trigger_bulk.Bug-4045.stable.err sql/test/BugTracker-2017/Tests/complicated_logic.Bug-105.stable.out sql/test/BugTracker-2017/Tests/crash_correlated_subqueries_in_select.Bug-6254.stable.out sql/test/BugTracker-2017/Tests/side-effect.Bug-6397.stable.out.single sql/test/BugTracker-2017/Tests/sqlsmith.Bug-6219.stable.out sql/test/BugTracker-2017/Tests/sqlsmith.Bug-6432.stable.err sql/test/BugTracker-2017/Tests/sqlsmith.Bug-6432.stable.out sql/test/BugTracker-2017/Tests/sqlsmith04.stable.out sql/test/BugTracker-2019/Tests/All sql/test/BugTracker-2019/Tests/double-free.Bug-6757.sql sql/test/BugTracker-2019/Tests/index-insert-crash.Bug-6781.sql sql/test/BugTracker/Tests/explain.SF-1739353.stable.out sql/test/Tests/truncate-statements-extra.sql sql/test/Tests/truncate-statements-extra.stable.out sql/test/Triggers/Tests/All sql/test/Triggers/trigger_action.sql sql/test/Users/Tests/All sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64.int128 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.stable.out sql/test/emptydb/Tests/check.stable.out.32bit sql/test/emptydb/Tests/check.stable.out.int128 sql/test/mergetables/Tests/mergequery.stable.out sql/test/miscellaneous/Tests/alter_table_add_column.sql sql/test/miscellaneous/Tests/alter_table_add_column.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/remote/Tests/partition_elim.stable.out 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.sql sql/test/sys-schema/Tests/check_PrimaryKey_uniqueness.stable.out sql/test/sys-schema/Tests/systemfunctions.stable.out sql/test/sys-schema/Tests/systemfunctions.stable.out.int128 sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128 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 testing/exportutils.py tools/merovingian/client/monetdb.c tools/merovingian/daemon/argvcmds.c tools/merovingian/daemon/client.c tools/merovingian/daemon/connections.c tools/merovingian/daemon/controlrunner.c tools/merovingian/daemon/discoveryrunner.c tools/merovingian/daemon/forkmserver.c tools/merovingian/daemon/forkmserver.h tools/merovingian/daemon/proxy.c tools/merovingian/utils/control.c tools/merovingian/utils/database.c Branch: mosaic Log Message:
Merge with default. diffs (truncated from 196281 to 300 lines): diff --git a/.hgignore b/.hgignore --- a/.hgignore +++ b/.hgignore @@ -49,7 +49,6 @@ sql/backends/monet5/UDF/capi/cheader.tex .#* # files generated by compilers -lex.yy.c *.tab.c *.tab.h .libs diff --git a/NT/Makefile b/NT/Makefile --- a/NT/Makefile +++ b/NT/Makefile @@ -25,6 +25,8 @@ all: _all install: targetdirs all $(MAKE) /nologo /f "$(srcdir)\Makefile.msc" "prefix=$(prefix)" "bits=$(bits)" install $(INSTALL) .monetdb "$(sysconfdir)" + +makewxs: $(PYTHON) $(NT)\mksqlwxs.py $(VERSION) "$(MAKE_INCLUDEFILE)" "$(prefix)" > "$(prefix)\MonetDB5-SQL-Installer.wxs" $(PYTHON) $(NT)\mkodbcwxs.py $(VERSION) "$(MAKE_INCLUDEFILE)" "$(prefix)" > "$(prefix)\MonetDB-ODBC-Installer.wxs" diff --git a/NT/rules.msc b/NT/rules.msc --- a/NT/rules.msc +++ b/NT/rules.msc @@ -186,8 +186,7 @@ libpy3_CFLAGS = -DHAVE_LIBPY3 "-I$(PYTHO # PYTHON may be either a version 2 or a version 3 # here we let %Path% determine which version we get PYTHON = python -YACC = bison -LEX = flex +BISON = bison ARCHIVER = lib /nologo GENDLL = 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 @@ -19,7 +19,7 @@ from filesplit import split_filename, rs # buildtools/conf. The generated sources should therefore be included # in the tar ball and not be removed with `make distclean' when # running "in" said tar ball. -buildtools_ext = ['brg', 'l', 'pm.i', 'syms', 't', 'y'] +buildtools_ext = ['syms', 'y'] am_assign = "+=" @@ -150,6 +150,8 @@ def am_find_srcs(target, deps, am, cond) am['CLEAN'].append(pf) b, ext = split_filename(pf) if ext in automake_ext: + if ext in ['tab.c', 'tab.h']: + dist = True return dist, pf return dist, "" @@ -563,7 +565,7 @@ def am_binary(fd, var, binmap, am): if ext in scripts_ext: if target not in SCRIPTS: SCRIPTS.append(target) - elif ext in ('o', 'glue.o', 'tab.o', 'yy.o'): + elif ext in ('o', 'tab.o'): dist, src = am_find_srcs(target, binmap['DEPS'], am, cond) if src in binmap['SOURCES']: dist = True 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 @@ -21,25 +21,15 @@ from filesplit import split_filename # direct rules code_gen = {'y': [ '.tab.c', '.tab.h' ], 'tab.c': [ '.tab.o' ], - 'l': [ '.yy.c', '.yy.h' ], - 'yy.c': [ '.yy.o' ], 'mt': [ '.symbols.h', '.c' ], - 'brg': [ '.c' ], 't': [ '.c' ], 'c': [ '.o' ], - 'cpp': [ '.o' ], -# 'java': [ '.class' ], - #'tex': [ '.html', '.dvi', '.pdf' ], - #'dvi': [ '.ps' ], - #'fig': [ '.eps' ], - #'feps': [ '.eps' ], 'in': [ '' ], '1.in': [ '.1' ], # TODO: add more manpage sections as needed 'cfg.in': [ '.cfg' ], 'java.in': [ '.java' ], 'mal.in': [ '.mal' ], 'py.in': [ '.py' ], - 'pl.in': [ '.pl' ], 'bat.in': [ '.bat' ], 'mt.sed': [ '.mt' ], 'c.sed': [ '.c' ], @@ -69,15 +59,8 @@ t_inc = re.compile(t_inc, re.MULTILINE) scan_map = { 'c': [ c_inc, None, '' ], - 'cpp': [ c_inc, None, '' ], 'h': [ c_inc, None, '' ], 'y': [ c_inc, None, '' ], - 'l': [ c_inc, None, '' ], - 'mt': [ c_inc, None, '' ], - 'brg': [ c_inc, None, '' ], - 't': [ t_inc, None, '' ], - 'xsl': [ xsl_inc, None, '' ], - 'tex': [ tex_inc, None, '' ], } def readfile(f): diff --git a/buildtools/autogen/autogen/filesplit.py b/buildtools/autogen/autogen/filesplit.py --- a/buildtools/autogen/autogen/filesplit.py +++ b/buildtools/autogen/autogen/filesplit.py @@ -13,7 +13,7 @@ def rsplit_filename(f): return f[:s], f[s+1:] return base, ext -automake_ext = ['', 'c', 'cpp', 'def', 'h', 'lo', 'o', 'pm.c', 'tab.c', 'tab.h', 'yy.c', 'pm.i'] +automake_ext = set(['', 'c', 'def', 'h', 'lo', 'o', 'tab.c', 'tab.h']) automake_extra_extensions = set([rsplit_filename(x)[1] for x in automake_ext if '.' in x]) extra_extensions = ['in', 'bat', 'sed'] 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 @@ -326,22 +326,21 @@ def msc_dep(fd, tar, deplist, msc): fd.write(getsrc) x, de = split_filename(deplist[0]) of = b + '.' + de - fd.write('\t$(YACC) $(YFLAGS) $(AM_YFLAGS) "%s"\n' % of) + fd.write('\t$(BISON) -o %s.tmpc.c --defines=%s.tab.h $(YFLAGS) $(AM_YFLAGS) %s\n' % (b, b, of)) + fd.write('\trm -f %s.tmpc.c\n' % b) elif ext == "tab.c": fd.write(getsrc) x, de = split_filename(deplist[0]) of = b + '.' + de - fd.write('\t$(YACC) $(YFLAGS) $(AM_YFLAGS) "%s"\n' % of) - elif ext == "yy.c": - fd.write(getsrc) - fd.write('\t$(LEX) $(LFLAGS) $(AM_LFLAGS) "%s.l"\n' % b) - elif ext in ("obj", "tab.obj", "yy.obj"): + fd.write('\t$(BISON) -o %s.tab.c --defines=%s.tmph.h $(YFLAGS) $(AM_YFLAGS) %s\n' % (b, b, of)) + fd.write('\trm -f %s.tmph.h\n' % b) + elif ext in ("obj", "tab.obj"): target, name = msc_find_target(tar, msc) if name[0] == '_': name = name[1:] if target == "LIB": d, dext = split_filename(deplist[0]) - if dext in ("c", "cpp", "yy.c", "tab.c"): + if dext in ("c", "tab.c"): fd.write('\t$(CC) /EHsc $(CFLAGS) $(%s_CFLAGS) $(GENDLL) -D_CRT_SECURE_NO_WARNINGS -DLIB%s "-Fo%s" -c "%s"\n' % (split_filename(msc_basename(src))[0], name, t, src)) elif ext == 'res': @@ -569,8 +568,6 @@ def msc_binary(fd, var, binmap, msc): srcs = srcs + " " + t + ".obj" elif ext == "tab.o": srcs = srcs + " " + t + ".tab.obj" - elif ext == "yy.o": - srcs = srcs + " " + t + ".yy.obj" elif ext == 'def': srcs = srcs + ' ' + target elif ext == 'res': @@ -665,8 +662,6 @@ def msc_bins(fd, var, binsmap, msc): srcs = srcs + " " + t + ".obj" elif ext == "tab.o": srcs = srcs + " " + t + ".tab.obj" - elif ext == "yy.o": - srcs = srcs + " " + t + ".yy.obj" elif ext == 'res': srcs = srcs + " " + t + ".res" elif ext in hdrs_ext: @@ -809,10 +804,6 @@ def msc_library(fd, var, libmap, msc): srcs = srcs + " " + t + ".obj" elif ext == "tab.o": srcs = srcs + " " + t + ".tab.obj" - elif ext == "yy.o": - srcs = srcs + " " + t + ".yy.obj" - elif ext == "pm.o": - srcs = srcs + " " + t + ".pm.obj" elif ext == 'res': srcs = srcs + " " + t + ".res" elif ext in hdrs_ext: diff --git a/buildtools/conf/rules.mk b/buildtools/conf/rules.mk --- a/buildtools/conf/rules.mk +++ b/buildtools/conf/rules.mk @@ -10,30 +10,12 @@ CP=cp MV=mv %.tab.c: %.y - touch waiting.$$$$ && until ln waiting.$$$$ waiting 2>/dev/null; do sleep 1; done && rm waiting.$$$$ - $(YACC) $(YFLAGS) $(AM_YFLAGS) $< || { $(RM) waiting ; exit 1 ; } - if [ -f y.tab.c ]; then $(MV) y.tab.c $*.tab.c ; fi - [ ! -f y.tab.h ] || $(RM) y.tab.h - $(RM) waiting + $(BISON) -o $*.tab.c --defines=$*.tmph.h $(YFLAGS) $(AM_YFLAGS) $< + rm -f $*.tmph.h %.tab.h: %.y - touch waiting.$$$$ && until ln waiting.$$$$ waiting 2>/dev/null; do sleep 1; done && rm waiting.$$$$ - $(YACC) $(YFLAGS) $(AM_YFLAGS) $< || { $(RM) waiting ; exit 1 ; } - if [ -f y.tab.h ]; then $(MV) y.tab.h $*.tab.h ; fi - [ ! -f y.tab.c ] || $(RM) y.tab.c - $(RM) waiting - -%.yy.c: %.l - touch waiting.$$$$ && until ln waiting.$$$$ waiting 2>/dev/null; do sleep 1; done && rm waiting.$$$$ - $(LEX) $(LFLAGS) $(AM_LFLAGS) $< || { $(RM) waiting ; exit 1 ; } - [ -f $*.yy.h ] && $(RM) $*.yy.h - $(RM) waiting - -%.yy.h: %.l - touch waiting.$$$$ && until ln waiting.$$$$ waiting 2>/dev/null; do sleep 1; done && rm waiting.$$$$ - $(LEX) $(LFLAGS) $(AM_LFLAGS) $< || { $(RM) waiting ; exit 1 ; } - [ -f $*.yy.c ] && $(RM) $*.yy.c - $(RM) waiting + $(BISON) -o $*.tmpc.c --defines=$*.tab.h $(YFLAGS) $(AM_YFLAGS) $< + rm -f $*.tmpc.c %.def: %.syms case `(uname -s) 2> /dev/null || echo unknown` in CYGWIN*) cat $<;; *) sed '/DllMain/d;s/=.*//' $<;; esac > $@ 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 @@ -555,7 +555,9 @@ stdout of test 'MAL-signatures` in direc [ "algebra", "ilikeselect", "command algebra.ilikeselect(b:bat[:str], cand:bat[:oid], pat:str, esc:str, anti:bit):bat[:oid] ", "PCRElikeselect1;", "" ] [ "algebra", "ilikeselect", "command algebra.ilikeselect(b:bat[:str], cand:bat[:oid], pat:str, anti:bit):bat[:oid] ", "PCRElikeselect4;", "" ] [ "algebra", "intersect", "command algebra.intersect(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng):bat[:oid] ", "ALGintersect;", "Intersection of l and r with candidate lists (i.e. half of semi-join)" ] +[ "algebra", "join", "command algebra.join(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng):bat[:oid] ", "ALGjoin1;", "Join; only produce left output" ] [ "algebra", "join", "command algebra.join(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGjoin;", "Join" ] +[ "algebra", "leftjoin", "command algebra.leftjoin(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng):bat[:oid] ", "ALGleftjoin1;", "Left join with candidate lists; only produce left output" ] [ "algebra", "leftjoin", "command algebra.leftjoin(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGleftjoin;", "Left join with candidate lists" ] [ "algebra", "like", "command algebra.like(s:str, pat:str):bit ", "PCRElike2;", "" ] [ "algebra", "like", "command algebra.like(s:str, pat:str, esc:str):bit ", "PCRElike3;", "" ] @@ -576,7 +578,9 @@ stdout of test 'MAL-signatures` in direc [ "algebra", "rangejoin", "command algebra.rangejoin(l:bat[:any_1], r1:bat[:any_1], r2:bat[:any_1], sl:bat[:oid], sr:bat[:oid], li:bit, hi:bit, estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGrangejoin;", "Range join: values in l and r1/r2 match if r1 <[=] l <[=] r2" ] [ "algebra", "reuse", "command algebra.reuse(b:bat[:any_1]):bat[:any_1] ", "ALGreuse;", "Reuse a temporary BAT if you can. Otherwise,\n\tallocate enough storage to accept result of an\n \toperation (not involving the heap)" ] [ "algebra", "select", "command algebra.select(b:bat[:any_1], low:any_1, high:any_1, li:bit, hi:bit, anti:bit):bat[:oid] ", "ALGselect1;", "Select all head values for which the tail value is in range.\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 tail value\n\tis between the values low and high (inclusive if li respectively\n\thi is set). The output BAT is sorted on the tail value. If low\n\tor high is nil, the boundary is not considered (effectively - and\n\t+ infinity). If anti is set, the result is the complement. Nil\n\tvalues in the tail are never matched, unless low=nil, high=nil,\n\tli=1, hi=1, anti=0. All non-nil values are returned if low=nil,\n\thigh=nil, and li, hi are not both 1, or anti=1.\n\tNote that the output is suitable as second input for the other\n\tversion of this function." ] +[ "algebra", "select", "command algebra.select(b:bat[:any_1], low:any_1, high:any_1, li:bit, hi:bit, anti:bit, unknown:bit):bat[:oid] ", "ALGselect1nil;", "With unknow set, each nil != nil" ] [ "algebra", "select", "command algebra.select(b:bat[:any_1], s:bat[:oid], low:any_1, high:any_1, li:bit, hi:bit, anti:bit):bat[:oid] ", "ALGselect2;", "Select all head values of the first input BAT for which the tail value\n\tis in range and for which the head value occurs in the tail of the\n\tsecond input BAT.\n\tThe first input is a dense-headed BAT, the second input is a\n\tdense-headed BAT with sorted tail, output is a dense-headed BAT\n\twith in the tail the head value of the input BAT for which the\n\ttail value is between the values low and high (inclusive if li\n\trespectively hi is set). The output BAT is sorted on the tail\n\tvalue. If low or high is nil, the boundary is not considered\n\t(effectively - and + infinity). If anti is set, the result is the\n\tcomplement. Nil values in the tail are never matched, unless\n\tlow=nil, high=nil, li=1, hi=1, anti=0. All non-nil values are\n\treturned if low=nil, high=nil, and li, hi are not both 1, or anti=1.\n\tNote that th e output is suitable as second input for this\n\tfunction." ] +[ "algebra", "select", "command algebra.select(b:bat[:any_1], s:bat[:oid], low:any_1, high:any_1, li:bit, hi:bit, anti:bit, unknown:bit):bat[:oid] ", "ALGselect2nil;", "With unknow set, each nil != nil" ] [ "algebra", "selectNotNil", "command algebra.selectNotNil(b:bat[:any_2]):bat[:any_2] ", "ALGselectNotNil;", "Select all not-nil values" ] [ "algebra", "semijoin", "command algebra.semijoin(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGsemijoin;", "Semi join with candidate lists" ] [ "algebra", "slice", "command algebra.slice(b:bat[:any_1], x:lng, y:lng):bat[:any_1] ", "ALGslice;", "Return the slice with the BUNs at position x till y." ] @@ -10752,7 +10756,7 @@ stdout of test 'MAL-signatures` in direc [ "clients", "getScenario", "pattern clients.getScenario():str ", "CLTgetScenario;", "Retrieve current scenario name." ] [ "clients", "getUsername", "pattern clients.getUsername():str ", "CLTgetUsername;", "Return the username of the currently logged in user" ] [ "clients", "getUsers", "pattern clients.getUsers() (X_0:bat[:oid], X_1:bat[:str]) ", "CLTgetUsers;", "return a BAT with user id and one with name available in the system" ] -[ "clients", "getprofile", "pattern clients.getprofile() (opt:str, q:lng, s:lng, w:int, m:lng) ", "CLTgetProfile;", "Retrieve the profile settings for a client" ] +[ "clients", "getprofile", "pattern clients.getprofile() (opt:str, q:int, s:int, w:int, m:int) ", "CLTgetProfile;", "Retrieve the profile settings for a client" ] [ "clients", "md5sum", "command clients.md5sum(pw:str):str ", "CLTmd5sum;", "Return hex string representation of the MD5 hash of the given string" ] [ "clients", "quit", "pattern clients.quit():void ", "CLTquit;", "Terminate the client session." ] [ "clients", "quit", "pattern clients.quit(idx:int):void ", "CLTquit;", "Terminate the session for a single client using a soft error.\nIt is the privilige of the console user." ] @@ -10761,19 +10765,19 @@ stdout of test 'MAL-signatures` in direc [ "clients", "setListing", "pattern clients.setListing(flag:int):int ", "CLTsetListing;", "Turn on/off echo of MAL instructions:\n\t1 - echo input,\n\t2 - show mal instruction,\n\t4 - show details of type resolutoin, \n\t8 - show binding information." ] [ "clients", "setPassword", "pattern clients.setPassword(user:str, pass:str):void ", "CLTsetPassword;", "Set the password for the given user" ] [ "clients", "setScenario", "pattern clients.setScenario(msg:str):str ", "CLTsetScenario;", "Switch to other scenario handler, return previous one." ] -[ "clients", "setmemorylimit", "pattern clients.setmemorylimit(n:lng):void ", "CLTsetmemorylimit;", "" ] -[ "clients", "setmemorylimit", "pattern clients.setmemorylimit(sid:int, n:lng):void ", "CLTsetmemorylimit;", "Limit the memory claim in MB per query" ] +[ "clients", "setmemorylimit", "pattern clients.setmemorylimit(n:int):void ", "CLTsetmemorylimit;", "" ] +[ "clients", "setmemorylimit", "pattern clients.setmemorylimit(sid:int, n:int):void ", "CLTsetmemorylimit;", "Limit the memory claim in MB per query" ] [ "clients", "setoptimizer", "pattern clients.setoptimizer(opt:str):void ", "CLTsetoptimizer;", "" ] [ "clients", "setoptimizer", "pattern clients.setoptimizer(sid:int, opt:str):void ", "CLTsetoptimizer;", "Set the session optimizer" ] [ "clients", "setprinttimeout", "command clients.setprinttimeout(n:int):void ", "CLTsetPrintTimeout;", "Print running query every so many seconds." ] -[ "clients", "setquerytimeout", "pattern clients.setquerytimeout(n:lng):void ", "CLTqueryTimeout;", "" ] -[ "clients", "setquerytimeout", "pattern clients.setquerytimeout(sid:bte, n:lng):void ", "CLTqueryTimeout;", "" ] -[ "clients", "setquerytimeout", "pattern clients.setquerytimeout(sid:int, n:lng):void ", "CLTqueryTimeout;", "A query is aborted after q milliseconds (q=0 means run undisturbed)." ] -[ "clients", "setquerytimeout", "pattern clients.setquerytimeout(sid:sht, n:lng):void ", "CLTqueryTimeout;", "" ] -[ "clients", "setsessiontimeout", "pattern clients.setsessiontimeout(n:lng):void ", "CLTsessionTimeout;", "" ] -[ "clients", "setsessiontimeout", "pattern clients.setsessiontimeout(sid:bte, n:lng):void ", "CLTsessionTimeout;", "" ] -[ "clients", "setsessiontimeout", "pattern clients.setsessiontimeout(sid:int, n:lng):void ", "CLTsessionTimeout;", "Set the session timeout for a particulat session id" ] -[ "clients", "setsessiontimeout", "pattern clients.setsessiontimeout(sid:sht, n:lng):void ", "CLTsessionTimeout;", "" ] +[ "clients", "setquerytimeout", "pattern clients.setquerytimeout(n:int):void ", "CLTqueryTimeout;", "" ] +[ "clients", "setquerytimeout", "pattern clients.setquerytimeout(sid:bte, n:int):void ", "CLTqueryTimeout;", "" ] +[ "clients", "setquerytimeout", "pattern clients.setquerytimeout(sid:int, n:int):void ", "CLTqueryTimeout;", "A query is aborted after q seconds (q=0 means run undisturbed)." ] +[ "clients", "setquerytimeout", "pattern clients.setquerytimeout(sid:sht, n:int):void ", "CLTqueryTimeout;", "" ] +[ "clients", "setsessiontimeout", "pattern clients.setsessiontimeout(n:int):void ", "CLTsessionTimeout;", "" ] +[ "clients", "setsessiontimeout", "pattern clients.setsessiontimeout(sid:bte, n:int):void ", "CLTsessionTimeout;", "" ] +[ "clients", "setsessiontimeout", "pattern clients.setsessiontimeout(sid:int, n:int):void ", "CLTsessionTimeout;", "Set the session timeout for a particulat session id" ] +[ "clients", "setsessiontimeout", "pattern clients.setsessiontimeout(sid:sht, n:int):void ", "CLTsessionTimeout;", "" ] [ "clients", "setworkerlimit", "pattern clients.setworkerlimit(n:int):void ", "CLTsetworkerlimit;", "" ] [ "clients", "setworkerlimit", "pattern clients.setworkerlimit(sid:int, n:int):void ", "CLTsetworkerlimit;", "Limit the number of worker threads per query" ] [ "clients", "sha1sum", "command clients.sha1sum(pw:str):str ", "CLTsha1sum;", "Return hex string representation of the SHA-1 hash of the given string" ] @@ -11065,26 +11069,38 @@ stdout of test 'MAL-signatures` in direc [ "geom", "mbrRight", "command geom.mbrRight(geom1:wkb, geom2:wkb):bit ", "mbrRight_wkb;", "Returns true if the mbr of geom1 is right of the mbr of geom2" ] [ "geom", "prelude", "command geom.prelude():void ", "geom_prelude;", "" ] [ "geom", "setSRID", "command geom.setSRID(w:wkb, srid:int):wkb ", "wkbSetSRID;", "Sets the Reference System ID for this Geometry." ] +[ "group", "group", "command group.group(b:bat[:any_1]):bat[:oid] ", "GRPgroup11;", "" ] [ "group", "group", "command group.group(b:bat[:any_1]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ", "GRPgroup1;", "" ] +[ "group", "group", "command group.group(b:bat[:any_1], s:bat[:oid]):bat[:oid] ", "GRPgroup21;", "" ] [ "group", "group", "command group.group(b:bat[:any_1], s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ", "GRPgroup2;", "" ] [ "group", "group", "command group.group(b:bat[:any_1]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup3;", "" ] [ "group", "group", "command group.group(b:bat[:any_1], s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup4;", "" ] +[ "group", "groupdone", "command group.groupdone(b:bat[:any_1]):bat[:oid] ", "GRPgroup11;", "" ] [ "group", "groupdone", "command group.groupdone(b:bat[:any_1]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ", "GRPgroup1;", "" ] +[ "group", "groupdone", "command group.groupdone(b:bat[:any_1], s:bat[:oid]):bat[:oid] ", "GRPgroup21;", "" ] [ "group", "groupdone", "command group.groupdone(b:bat[:any_1], s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ", "GRPgroup2;", "" ] [ "group", "groupdone", "command group.groupdone(b:bat[:any_1]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup3;", "" ] [ "group", "groupdone", "command group.groupdone(b:bat[:any_1], s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup4;", "" ] _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list