Changeset: 14de023fcd87 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=14de023fcd87
Added Files:
monetdb5/modules/mal/Tests/pqueue2.stable.err
monetdb5/modules/mal/Tests/pqueue2.stable.out
monetdb5/modules/mal/Tests/pqueue3.stable.err
monetdb5/modules/mal/Tests/pqueue3.stable.out
sql/test/pg_regress/Tests/aggregates.stable.err
sql/test/pg_regress/Tests/aggregates.stable.out
sql/test/pg_regress/Tests/alter_table.stable.err
sql/test/pg_regress/Tests/alter_table.stable.out
sql/test/pg_regress/Tests/arrays.stable.err
sql/test/pg_regress/Tests/arrays.stable.out
sql/test/pg_regress/Tests/bit.stable.err
sql/test/pg_regress/Tests/bit.stable.out
sql/test/pg_regress/Tests/boolean.stable.err
sql/test/pg_regress/Tests/boolean.stable.out
sql/test/pg_regress/Tests/box.stable.err
sql/test/pg_regress/Tests/box.stable.out
sql/test/pg_regress/Tests/btree_index.stable.err
sql/test/pg_regress/Tests/btree_index.stable.out
sql/test/pg_regress/Tests/case.stable.err
sql/test/pg_regress/Tests/case.stable.out
sql/test/pg_regress/Tests/circle.stable.err
sql/test/pg_regress/Tests/circle.stable.out
sql/test/pg_regress/Tests/cluster.stable.err
sql/test/pg_regress/Tests/cluster.stable.out
sql/test/pg_regress/Tests/comments.stable.err
sql/test/pg_regress/Tests/comments.stable.out
sql/test/pg_regress/Tests/conversion.stable.err
sql/test/pg_regress/Tests/conversion.stable.out
sql/test/pg_regress/Tests/copy2.stable.err
sql/test/pg_regress/Tests/copy2.stable.out
sql/test/pg_regress/Tests/create_aggregate.stable.err
sql/test/pg_regress/Tests/create_aggregate.stable.out
sql/test/pg_regress/Tests/create_index.stable.err
sql/test/pg_regress/Tests/create_index.stable.out
sql/test/pg_regress/Tests/create_misc.stable.err
sql/test/pg_regress/Tests/create_misc.stable.out
sql/test/pg_regress/Tests/create_operator.stable.err
sql/test/pg_regress/Tests/create_operator.stable.out
sql/test/pg_regress/Tests/create_table.stable.err
sql/test/pg_regress/Tests/create_table.stable.out
sql/test/pg_regress/Tests/create_type.stable.err
sql/test/pg_regress/Tests/create_type.stable.out
sql/test/pg_regress/Tests/create_view.stable.err
sql/test/pg_regress/Tests/create_view.stable.out
sql/test/pg_regress/Tests/date.stable.err
sql/test/pg_regress/Tests/date.stable.out
sql/test/pg_regress/Tests/domain.stable.err
sql/test/pg_regress/Tests/domain.stable.out
sql/test/pg_regress/Tests/drop.stable.err
sql/test/pg_regress/Tests/drop.stable.out
sql/test/pg_regress/Tests/errors.stable.err
sql/test/pg_regress/Tests/errors.stable.out
sql/test/pg_regress/Tests/float4.stable.err
sql/test/pg_regress/Tests/float4.stable.out
sql/test/pg_regress/Tests/float8.stable.err
sql/test/pg_regress/Tests/float8.stable.out
sql/test/pg_regress/Tests/foreign_key.stable.err
sql/test/pg_regress/Tests/foreign_key.stable.out
sql/test/pg_regress/Tests/geometry.stable.err
sql/test/pg_regress/Tests/geometry.stable.out
sql/test/pg_regress/Tests/hash_index.stable.err
sql/test/pg_regress/Tests/hash_index.stable.out
sql/test/pg_regress/Tests/horology.stable.err
sql/test/pg_regress/Tests/horology.stable.out
sql/test/pg_regress/Tests/inet.stable.err
sql/test/pg_regress/Tests/inet.stable.out
sql/test/pg_regress/Tests/inherit.stable.err
sql/test/pg_regress/Tests/inherit.stable.out
sql/test/pg_regress/Tests/insert.stable.err
sql/test/pg_regress/Tests/insert.stable.out
sql/test/pg_regress/Tests/int2.stable.err
sql/test/pg_regress/Tests/int2.stable.out
sql/test/pg_regress/Tests/int4.stable.err
sql/test/pg_regress/Tests/int4.stable.out
sql/test/pg_regress/Tests/int8.stable.err
sql/test/pg_regress/Tests/int8.stable.out
sql/test/pg_regress/Tests/interval.stable.err
sql/test/pg_regress/Tests/interval.stable.out
sql/test/pg_regress/Tests/join.stable.err
sql/test/pg_regress/Tests/join.stable.out
sql/test/pg_regress/Tests/limit.stable.err
sql/test/pg_regress/Tests/limit.stable.out
sql/test/pg_regress/Tests/lseg.stable.err
sql/test/pg_regress/Tests/lseg.stable.out
sql/test/pg_regress/Tests/mule_internal.stable.err
sql/test/pg_regress/Tests/mule_internal.stable.out
sql/test/pg_regress/Tests/name.stable.err
sql/test/pg_regress/Tests/name.stable.out
sql/test/pg_regress/Tests/namespace.stable.err
sql/test/pg_regress/Tests/namespace.stable.out
sql/test/pg_regress/Tests/numeric.stable.err
sql/test/pg_regress/Tests/numeric.stable.out
sql/test/pg_regress/Tests/numeric_big.stable.err
sql/test/pg_regress/Tests/numeric_big.stable.out
sql/test/pg_regress/Tests/numerology.stable.err
sql/test/pg_regress/Tests/numerology.stable.out
sql/test/pg_regress/Tests/oid.stable.err
sql/test/pg_regress/Tests/oid.stable.out
sql/test/pg_regress/Tests/oidjoins.stable.err
sql/test/pg_regress/Tests/oidjoins.stable.out
sql/test/pg_regress/Tests/opr_sanity.stable.err
sql/test/pg_regress/Tests/opr_sanity.stable.out
sql/test/pg_regress/Tests/path.stable.err
sql/test/pg_regress/Tests/path.stable.out
sql/test/pg_regress/Tests/plpgsql.stable.err
sql/test/pg_regress/Tests/plpgsql.stable.out
sql/test/pg_regress/Tests/point.stable.err
sql/test/pg_regress/Tests/point.stable.out
sql/test/pg_regress/Tests/polygon.stable.err
sql/test/pg_regress/Tests/polygon.stable.out
sql/test/pg_regress/Tests/polymorphism.stable.err
sql/test/pg_regress/Tests/polymorphism.stable.out
sql/test/pg_regress/Tests/portals.stable.err
sql/test/pg_regress/Tests/portals.stable.out
sql/test/pg_regress/Tests/portals_p2.stable.err
sql/test/pg_regress/Tests/portals_p2.stable.out
sql/test/pg_regress/Tests/prepare.stable.err
sql/test/pg_regress/Tests/prepare.stable.out
sql/test/pg_regress/Tests/privileges.stable.err
sql/test/pg_regress/Tests/privileges.stable.out
sql/test/pg_regress/Tests/random.stable.err
sql/test/pg_regress/Tests/random.stable.out
sql/test/pg_regress/Tests/rangefuncs.stable.err
sql/test/pg_regress/Tests/rangefuncs.stable.out
sql/test/pg_regress/Tests/reltime.stable.err
sql/test/pg_regress/Tests/reltime.stable.out
sql/test/pg_regress/Tests/rowtypes.stable.err
sql/test/pg_regress/Tests/rowtypes.stable.out
sql/test/pg_regress/Tests/rules.stable.err
sql/test/pg_regress/Tests/rules.stable.out
sql/test/pg_regress/Tests/sanity_check.stable.err
sql/test/pg_regress/Tests/sanity_check.stable.out
sql/test/pg_regress/Tests/select.stable.err
sql/test/pg_regress/Tests/select.stable.out
sql/test/pg_regress/Tests/select_distinct.stable.err
sql/test/pg_regress/Tests/select_distinct.stable.out
sql/test/pg_regress/Tests/select_distinct_on.stable.err
sql/test/pg_regress/Tests/select_distinct_on.stable.out
sql/test/pg_regress/Tests/select_having.stable.err
sql/test/pg_regress/Tests/select_having.stable.out
sql/test/pg_regress/Tests/select_implicit.stable.err
sql/test/pg_regress/Tests/select_implicit.stable.out
sql/test/pg_regress/Tests/select_into.stable.err
sql/test/pg_regress/Tests/select_into.stable.out
sql/test/pg_regress/Tests/select_views.stable.err
sql/test/pg_regress/Tests/select_views.stable.out
sql/test/pg_regress/Tests/sequence.stable.err
sql/test/pg_regress/Tests/sequence.stable.out
sql/test/pg_regress/Tests/sql_ascii.stable.err
sql/test/pg_regress/Tests/sql_ascii.stable.out
sql/test/pg_regress/Tests/stats.stable.err
sql/test/pg_regress/Tests/stats.stable.out
sql/test/pg_regress/Tests/strings.stable.err
sql/test/pg_regress/Tests/strings.stable.out
sql/test/pg_regress/Tests/subselect.stable.err
sql/test/pg_regress/Tests/subselect.stable.out
sql/test/pg_regress/Tests/temp.stable.err
sql/test/pg_regress/Tests/temp.stable.out
sql/test/pg_regress/Tests/time.stable.err
sql/test/pg_regress/Tests/time.stable.out
sql/test/pg_regress/Tests/timestamp.stable.err
sql/test/pg_regress/Tests/timestamp.stable.out
sql/test/pg_regress/Tests/timestamptz.stable.err
sql/test/pg_regress/Tests/timestamptz.stable.out
sql/test/pg_regress/Tests/timetz.stable.err
sql/test/pg_regress/Tests/timetz.stable.out
sql/test/pg_regress/Tests/tinterval.stable.err
sql/test/pg_regress/Tests/tinterval.stable.out
sql/test/pg_regress/Tests/transactions.stable.err
sql/test/pg_regress/Tests/transactions.stable.out
sql/test/pg_regress/Tests/triggers.stable.err
sql/test/pg_regress/Tests/triggers.stable.out
sql/test/pg_regress/Tests/truncate.stable.err
sql/test/pg_regress/Tests/truncate.stable.out
sql/test/pg_regress/Tests/type_sanity.stable.err
sql/test/pg_regress/Tests/type_sanity.stable.out
sql/test/pg_regress/Tests/union.stable.err
sql/test/pg_regress/Tests/union.stable.out
sql/test/pg_regress/Tests/update.stable.err
sql/test/pg_regress/Tests/update.stable.out
sql/test/pg_regress/Tests/vacuum.stable.err
sql/test/pg_regress/Tests/vacuum.stable.out
sql/test/pg_regress/Tests/without_oid.stable.err
sql/test/pg_regress/Tests/without_oid.stable.out
Removed Files:
sql/test/pg_regress/Tests/char.SQL.bat
sql/test/pg_regress/Tests/char.SQL.sh
sql/test/pg_regress/Tests/strings_cast.SQL.bat
sql/test/pg_regress/Tests/strings_cast.SQL.sh
sql/test/pg_regress/Tests/strings_concat.SQL.bat
sql/test/pg_regress/Tests/strings_concat.SQL.sh
sql/test/pg_regress/Tests/strings_like.SQL.bat
sql/test/pg_regress/Tests/strings_like.SQL.sh
sql/test/pg_regress/Tests/text.SQL.bat
sql/test/pg_regress/Tests/text.SQL.sh
sql/test/pg_regress/Tests/varchar.SQL.bat
sql/test/pg_regress/Tests/varchar.SQL.sh
Modified Files:
clients/R/MonetDB.R/src/mapi.c
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures_gsl.stable.out
clients/Tests/MAL-signatures_nocfitsio.stable.out
clients/Tests/MAL-signatures_sphinxclient.stable.out
clients/Tests/SQL-dump.stable.out
clients/Tests/SQL-dump.stable.out.64bit.oid32
clients/Tests/SQL-dump_gsl.stable.out
clients/Tests/SQL-dump_gsl.stable.out.oid32
clients/Tests/SQL-dump_nogeom.stable.out
clients/Tests/exports.stable.out
configure.ag
gdk/gdk.h
gdk/gdk_atoms.c
gdk/gdk_bat.c
gdk/gdk_join.c
monetdb5/modules/kernel/bat5.c
monetdb5/modules/kernel/bat5.mal
monetdb5/modules/mal/tablet.c
monetdb5/modules/mal/tokenizer.c
monetdb5/optimizer/Tests/inline08.stable.out
monetdb5/optimizer/opt_dataflow.c
monetdb5/optimizer/opt_evaluate.c
monetdb5/optimizer/opt_octopus.c
monetdb5/optimizer/opt_qep.c
monetdb5/optimizer/opt_remoteQueries.c
monetdb5/optimizer/opt_reorder.c
monetdb5/optimizer/opt_strengthReduction.c
monetdb5/optimizer/opt_wrapper.c
monetdb5/scheduler/run_octopus.c
sql/backends/monet5/rel_bin.c
sql/jdbc/tests/Tests/Test_PSmetadata.stable.out
sql/server/rel_dump.c
sql/server/rel_select.c
sql/server/rel_select.h
sql/server/rel_updates.c
sql/test/ADT2006/Tests/bram.stable.out
sql/test/BugTracker-2012/Tests/create_function.Bug-3172.stable.err
sql/test/BugTracker-2012/Tests/table_function_with_column_subselects.Bug-3172.stable.err
sql/test/BugTracker-2013/Tests/pivot.Bug-3339.stable.err
sql/test/Tests/systemfunctions.stable.out
sql/test/Tests/systemfunctions_gsl.stable.out
sql/test/Tests/systemfunctions_nogeom.stable.out
sql/test/leaks/Tests/check1.stable.out
sql/test/leaks/Tests/check2.stable.out
sql/test/leaks/Tests/check3.stable.out
sql/test/leaks/Tests/check4.stable.out
sql/test/leaks/Tests/check5.stable.out
sql/test/pg_regress/Tests/All
sql/test/pg_regress/Tests/char.stable.err
sql/test/pg_regress/Tests/char.stable.out
sql/test/pg_regress/Tests/load.SQL.bat
sql/test/pg_regress/Tests/load.SQL.sh
sql/test/pg_regress/Tests/strings_cast.stable.err
sql/test/pg_regress/Tests/strings_cast.stable.out
sql/test/pg_regress/Tests/strings_concat.stable.err
sql/test/pg_regress/Tests/strings_concat.stable.out
sql/test/pg_regress/Tests/strings_like.stable.err
sql/test/pg_regress/Tests/strings_like.stable.out
sql/test/pg_regress/Tests/text.stable.err
sql/test/pg_regress/Tests/text.stable.out
sql/test/pg_regress/Tests/varchar.stable.err
sql/test/pg_regress/Tests/varchar.stable.out
Branch: multifarm
Log Message:
Merge with default branch.
diffs (truncated from 42721 to 300 lines):
diff --git a/clients/R/MonetDB.R/src/mapi.c b/clients/R/MonetDB.R/src/mapi.c
--- a/clients/R/MonetDB.R/src/mapi.c
+++ b/clients/R/MonetDB.R/src/mapi.c
@@ -257,8 +257,8 @@ SEXP mapiRead(SEXP conn) {
while (response_buf_offset + block_length > response_buf_len) {
response_buf_len += ALLOCSIZE;
if (DEBUG) {
- printf("II: Reallocating memory, new size
%lu\n",
- (unsigned long)
response_buf_len);
+ printf("II: Reallocating memory, new size
"SZFMT"\n",
+ response_buf_len);
}
response_buf = realloc(response_buf, response_buf_len);
if (response_buf == NULL) {
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
@@ -2691,31 +2691,19 @@ command algebra.slice(b:bat[:any_1,:any_
address ALGslice_oid;
comment Return the slice based on head oid x till y (exclusive).
-command
algebra.select(b:bat[:any_2,:void],low:any_2,high:any_2,li:bit,hi:bit):bat[:any_2,:void]
-address ALGselectInclusiveHead;
-command
algebra.select(b:bat[:any_2,:void],low:any_2,high:any_2):bat[:any_2,:void]
-address ALGselectHead;
-command algebra.select(b:bat[:any_2,:void],low:any_2):bat[:any_2,:void]
-address ALGselect1Head;
-command algebra.selectH(b:bat[:any_1,:any_2],value:any_1):bat[:any_1,:any_2]
-address ALGselect1Head;
-command
algebra.selectH(b:bat[:any_1,:any_2],low:any_1,high:any_1,li:bit,hi:bit):bat[:any_1,:any_2]
-address ALGselectInclusiveHead;
-command
algebra.selectH(b:bat[:any_1,:any_2],low:any_1,high:any_1):bat[:any_1,:any_2]
-address ALGselectHead;
-command algebra.selectNotNil(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
+command algebra.selectNotNil(b:bat[:oid,:any_2]):bat[:oid,:any_2]
address ALGselectNotNil;
comment Select all not-nil values
-command algebra.select(b:bat[:any_1,:any_2],value:any_2):bat[:any_1,:any_2]
+command algebra.select(b:bat[:oid,:any_2],value:any_2):bat[:oid,:any_2]
address ALGselect1;
comment Select all BUNs of a BAT with a certain tail value. Selection
on NIL is also possible (it should be properly casted,
e.g.:int(nil)).
-command
algebra.select(b:bat[:any_1,:any_2],low:any_2,high:any_2,li:bit,hi:bit):bat[:any_1,:any_2]
+command
algebra.select(b:bat[:oid,:any_2],low:any_2,high:any_2,li:bit,hi:bit):bat[:oid,:any_2]
address ALGselectInclusive;
comment Select all BUNs that have tail values: {v| low <{=} v <{=} high}.
Boundary inclusion is indicated separately. NIL boundary values have a
special meaning. + low == nil means: no lower bound + high == nil
means: no upper bound.
-command
algebra.select(b:bat[:any_1,:any_2],low:any_2,high:any_2):bat[:any_1,:any_2]
+command
algebra.select(b:bat[:oid,:any_2],low:any_2,high:any_2):bat[:oid,:any_2]
address ALGselect;
comment Select all BUNs that have tail values: {v| low <= v <= high}. NIL
boundary values have a special meaning. + low == nil means: no
lower bound + high == nil means: no upper bound. NOTE 1:
you should cast the nil to the appropriate type,
e.g. int(nil) in order to circumvent type clashes. NOTE 2: as the
'nil' element has no clear place in the ordered domain
of values, tuples with 'nil' values are NEVER
returned by the range select.
@@ -2759,10 +2747,6 @@ command algebra.topN(b:bat[:any_1,:any_2
address ALGtopN;
comment Trim all but the top N tuples.
-command
algebra.thetaselect(b:bat[:any_1,:any_2],val:any_2,op:str):bat[:any_1,:any_2]
-address ALGthetaselect;
-comment The theta (<=,<,=,>,>=) select()
-
command
algebra.thetasubselect(b:bat[:oid,:any_1],s:bat[:oid,:oid],val:any_1,op:str):bat[:oid,:oid]
address ALGthetasubselect2;
comment Select all head values of the first input BAT for which the tail value
obeys the relation value OP VAL and for which the head value occurs in the
tail of the second input BAT. Input is a dense-headed BAT, output is a
dense-headed BAT with in the tail the head value of the input BAT for
which the relationship holds. The output BAT is sorted on the tail value.
@@ -32068,14 +32052,6 @@ command bat.setHash(b:bat[:oid,:any_2],p
address BKCsetHash;
comment Create a hash structure on the column
-command bat.setMemoryAdvise(b:bat[:oid,:any_2],mode:int):bit
-address BKCmadvise2;
-comment alias for madvise(b, mode, mode, mode, mode)
-
-command
bat.setMemoryAdvise(b:bat[:oid,:any_2],head_mode:int,tail_mode:int,hheap_mode:int,theap_mode:int):bit
-address BKCmadvise;
-comment Modern Operating Systems allow users to influence the buffer
management policy of virtual memory. This is a crucial feature for
database systems, and eliminates the need to reimplement the OS in a
database buffer manager. The supported flags are BUF_NORMAL (the
normal adaptive kernel algorithm), BUF_RANDOM (no page prefetching),
BUF_SEQUENTIAL (prefetch and swapout), BUF_WILLNEED (load everything with
prefetch), BUF_DONTNEED (swapout). These buffer management modes are not
persistent. Returns the BAT operated upon.
-
command bat.setMemoryMap(b:bat[:oid,:any_2],mode:int):bit
address BKCmmap2;
comment Alias for mmap(b, mode, mode, mode, mode)
@@ -39444,6 +39420,10 @@ command iterator.new(b:bat[:oid,:any_2],
address ITRnewChunk;
comment Create an iterator with fixed granule size. The result is a view.
+command json.aggr(val:bat[:oid,:dbl]):str
+address JSONgroupStr;
+comment Aggregate the double values to array.
+
command json.aggr(val:bat[:oid,:str]):str
address JSONgroupStr;
comment Aggregate the string values to array.
@@ -39550,10 +39530,18 @@ pattern json.renderarray(val:any...):jso
address JSONrenderarray;
pattern json.renderobject(val:any...):json
address JSONrenderobject;
+command
json.subaggr(val:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_1],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:str]
+address JSONsubjsoncand;
+comment Grouped aggregation of values with candidates list.
+
command
json.subaggr(val:bat[:oid,:str],g:bat[:oid,:oid],e:bat[:oid,:any_1],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:str]
address JSONsubjsoncand;
comment Grouped aggregation of values with candidates list.
+command
json.subaggr(val:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_1],skip_nils:bit):bat[:oid,:str]
+address JSONsubjson;
+comment Grouped aggregation of values.
+
command
json.subaggr(val:bat[:oid,:str],g:bat[:oid,:oid],e:bat[:oid,:any_1],skip_nils:bit):bat[:oid,:str]
address JSONsubjson;
comment Grouped aggregation of values.
diff --git a/clients/Tests/MAL-signatures_gsl.stable.out
b/clients/Tests/MAL-signatures_gsl.stable.out
--- a/clients/Tests/MAL-signatures_gsl.stable.out
+++ b/clients/Tests/MAL-signatures_gsl.stable.out
@@ -2691,31 +2691,19 @@ command algebra.slice(b:bat[:any_1,:any_
address ALGslice_oid;
comment Return the slice based on head oid x till y (exclusive).
-command
algebra.select(b:bat[:any_2,:void],low:any_2,high:any_2,li:bit,hi:bit):bat[:any_2,:void]
-address ALGselectInclusiveHead;
-command
algebra.select(b:bat[:any_2,:void],low:any_2,high:any_2):bat[:any_2,:void]
-address ALGselectHead;
-command algebra.select(b:bat[:any_2,:void],low:any_2):bat[:any_2,:void]
-address ALGselect1Head;
-command algebra.selectH(b:bat[:any_1,:any_2],value:any_1):bat[:any_1,:any_2]
-address ALGselect1Head;
-command
algebra.selectH(b:bat[:any_1,:any_2],low:any_1,high:any_1,li:bit,hi:bit):bat[:any_1,:any_2]
-address ALGselectInclusiveHead;
-command
algebra.selectH(b:bat[:any_1,:any_2],low:any_1,high:any_1):bat[:any_1,:any_2]
-address ALGselectHead;
-command algebra.selectNotNil(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
+command algebra.selectNotNil(b:bat[:oid,:any_2]):bat[:oid,:any_2]
address ALGselectNotNil;
comment Select all not-nil values
-command algebra.select(b:bat[:any_1,:any_2],value:any_2):bat[:any_1,:any_2]
+command algebra.select(b:bat[:oid,:any_2],value:any_2):bat[:oid,:any_2]
address ALGselect1;
comment Select all BUNs of a BAT with a certain tail value. Selection
on NIL is also possible (it should be properly casted,
e.g.:int(nil)).
-command
algebra.select(b:bat[:any_1,:any_2],low:any_2,high:any_2,li:bit,hi:bit):bat[:any_1,:any_2]
+command
algebra.select(b:bat[:oid,:any_2],low:any_2,high:any_2,li:bit,hi:bit):bat[:oid,:any_2]
address ALGselectInclusive;
comment Select all BUNs that have tail values: {v| low <{=} v <{=} high}.
Boundary inclusion is indicated separately. NIL boundary values have a
special meaning. + low == nil means: no lower bound + high == nil
means: no upper bound.
-command
algebra.select(b:bat[:any_1,:any_2],low:any_2,high:any_2):bat[:any_1,:any_2]
+command
algebra.select(b:bat[:oid,:any_2],low:any_2,high:any_2):bat[:oid,:any_2]
address ALGselect;
comment Select all BUNs that have tail values: {v| low <= v <= high}. NIL
boundary values have a special meaning. + low == nil means: no
lower bound + high == nil means: no upper bound. NOTE 1:
you should cast the nil to the appropriate type,
e.g. int(nil) in order to circumvent type clashes. NOTE 2: as the
'nil' element has no clear place in the ordered domain
of values, tuples with 'nil' values are NEVER
returned by the range select.
@@ -2759,10 +2747,6 @@ command algebra.topN(b:bat[:any_1,:any_2
address ALGtopN;
comment Trim all but the top N tuples.
-command
algebra.thetaselect(b:bat[:any_1,:any_2],val:any_2,op:str):bat[:any_1,:any_2]
-address ALGthetaselect;
-comment The theta (<=,<,=,>,>=) select()
-
command
algebra.thetasubselect(b:bat[:oid,:any_1],s:bat[:oid,:oid],val:any_1,op:str):bat[:oid,:oid]
address ALGthetasubselect2;
comment Select all head values of the first input BAT for which the tail value
obeys the relation value OP VAL and for which the head value occurs in the
tail of the second input BAT. Input is a dense-headed BAT, output is a
dense-headed BAT with in the tail the head value of the input BAT for
which the relationship holds. The output BAT is sorted on the tail value.
@@ -32080,14 +32064,6 @@ command bat.setHash(b:bat[:oid,:any_2],p
address BKCsetHash;
comment Create a hash structure on the column
-command bat.setMemoryAdvise(b:bat[:oid,:any_2],mode:int):bit
-address BKCmadvise2;
-comment alias for madvise(b, mode, mode, mode, mode)
-
-command
bat.setMemoryAdvise(b:bat[:oid,:any_2],head_mode:int,tail_mode:int,hheap_mode:int,theap_mode:int):bit
-address BKCmadvise;
-comment Modern Operating Systems allow users to influence the buffer
management policy of virtual memory. This is a crucial feature for
database systems, and eliminates the need to reimplement the OS in a
database buffer manager. The supported flags are BUF_NORMAL (the
normal adaptive kernel algorithm), BUF_RANDOM (no page prefetching),
BUF_SEQUENTIAL (prefetch and swapout), BUF_WILLNEED (load everything with
prefetch), BUF_DONTNEED (swapout). These buffer management modes are not
persistent. Returns the BAT operated upon.
-
command bat.setMemoryMap(b:bat[:oid,:any_2],mode:int):bit
address BKCmmap2;
comment Alias for mmap(b, mode, mode, mode, mode)
@@ -39460,6 +39436,10 @@ command iterator.new(b:bat[:oid,:any_2],
address ITRnewChunk;
comment Create an iterator with fixed granule size. The result is a view.
+command json.aggr(val:bat[:oid,:dbl]):str
+address JSONgroupStr;
+comment Aggregate the double values to array.
+
command json.aggr(val:bat[:oid,:str]):str
address JSONgroupStr;
comment Aggregate the string values to array.
@@ -39566,10 +39546,18 @@ pattern json.renderarray(val:any...):jso
address JSONrenderarray;
pattern json.renderobject(val:any...):json
address JSONrenderobject;
+command
json.subaggr(val:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_1],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:str]
+address JSONsubjsoncand;
+comment Grouped aggregation of values with candidates list.
+
command
json.subaggr(val:bat[:oid,:str],g:bat[:oid,:oid],e:bat[:oid,:any_1],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:str]
address JSONsubjsoncand;
comment Grouped aggregation of values with candidates list.
+command
json.subaggr(val:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_1],skip_nils:bit):bat[:oid,:str]
+address JSONsubjson;
+comment Grouped aggregation of values.
+
command
json.subaggr(val:bat[:oid,:str],g:bat[:oid,:oid],e:bat[:oid,:any_1],skip_nils:bit):bat[:oid,:str]
address JSONsubjson;
comment Grouped aggregation of values.
diff --git a/clients/Tests/MAL-signatures_nocfitsio.stable.out
b/clients/Tests/MAL-signatures_nocfitsio.stable.out
--- a/clients/Tests/MAL-signatures_nocfitsio.stable.out
+++ b/clients/Tests/MAL-signatures_nocfitsio.stable.out
@@ -2691,31 +2691,19 @@ command algebra.slice(b:bat[:any_1,:any_
address ALGslice_oid;
comment Return the slice based on head oid x till y (exclusive).
-command
algebra.select(b:bat[:any_2,:void],low:any_2,high:any_2,li:bit,hi:bit):bat[:any_2,:void]
-address ALGselectInclusiveHead;
-command
algebra.select(b:bat[:any_2,:void],low:any_2,high:any_2):bat[:any_2,:void]
-address ALGselectHead;
-command algebra.select(b:bat[:any_2,:void],low:any_2):bat[:any_2,:void]
-address ALGselect1Head;
-command algebra.selectH(b:bat[:any_1,:any_2],value:any_1):bat[:any_1,:any_2]
-address ALGselect1Head;
-command
algebra.selectH(b:bat[:any_1,:any_2],low:any_1,high:any_1,li:bit,hi:bit):bat[:any_1,:any_2]
-address ALGselectInclusiveHead;
-command
algebra.selectH(b:bat[:any_1,:any_2],low:any_1,high:any_1):bat[:any_1,:any_2]
-address ALGselectHead;
-command algebra.selectNotNil(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
+command algebra.selectNotNil(b:bat[:oid,:any_2]):bat[:oid,:any_2]
address ALGselectNotNil;
comment Select all not-nil values
-command algebra.select(b:bat[:any_1,:any_2],value:any_2):bat[:any_1,:any_2]
+command algebra.select(b:bat[:oid,:any_2],value:any_2):bat[:oid,:any_2]
address ALGselect1;
comment Select all BUNs of a BAT with a certain tail value. Selection
on NIL is also possible (it should be properly casted,
e.g.:int(nil)).
-command
algebra.select(b:bat[:any_1,:any_2],low:any_2,high:any_2,li:bit,hi:bit):bat[:any_1,:any_2]
+command
algebra.select(b:bat[:oid,:any_2],low:any_2,high:any_2,li:bit,hi:bit):bat[:oid,:any_2]
address ALGselectInclusive;
comment Select all BUNs that have tail values: {v| low <{=} v <{=} high}.
Boundary inclusion is indicated separately. NIL boundary values have a
special meaning. + low == nil means: no lower bound + high == nil
means: no upper bound.
-command
algebra.select(b:bat[:any_1,:any_2],low:any_2,high:any_2):bat[:any_1,:any_2]
+command
algebra.select(b:bat[:oid,:any_2],low:any_2,high:any_2):bat[:oid,:any_2]
address ALGselect;
comment Select all BUNs that have tail values: {v| low <= v <= high}. NIL
boundary values have a special meaning. + low == nil means: no
lower bound + high == nil means: no upper bound. NOTE 1:
you should cast the nil to the appropriate type,
e.g. int(nil) in order to circumvent type clashes. NOTE 2: as the
'nil' element has no clear place in the ordered domain
of values, tuples with 'nil' values are NEVER
returned by the range select.
@@ -2759,10 +2747,6 @@ command algebra.topN(b:bat[:any_1,:any_2
address ALGtopN;
comment Trim all but the top N tuples.
-command
algebra.thetaselect(b:bat[:any_1,:any_2],val:any_2,op:str):bat[:any_1,:any_2]
-address ALGthetaselect;
-comment The theta (<=,<,=,>,>=) select()
-
command
algebra.thetasubselect(b:bat[:oid,:any_1],s:bat[:oid,:oid],val:any_1,op:str):bat[:oid,:oid]
address ALGthetasubselect2;
comment Select all head values of the first input BAT for which the tail value
obeys the relation value OP VAL and for which the head value occurs in the
tail of the second input BAT. Input is a dense-headed BAT, output is a
dense-headed BAT with in the tail the head value of the input BAT for
which the relationship holds. The output BAT is sorted on the tail value.
@@ -32068,14 +32052,6 @@ command bat.setHash(b:bat[:oid,:any_2],p
address BKCsetHash;
comment Create a hash structure on the column
-command bat.setMemoryAdvise(b:bat[:oid,:any_2],mode:int):bit
-address BKCmadvise2;
-comment alias for madvise(b, mode, mode, mode, mode)
-
-command
bat.setMemoryAdvise(b:bat[:oid,:any_2],head_mode:int,tail_mode:int,hheap_mode:int,theap_mode:int):bit
-address BKCmadvise;
-comment Modern Operating Systems allow users to influence the buffer
management policy of virtual memory. This is a crucial feature for
database systems, and eliminates the need to reimplement the OS in a
database buffer manager. The supported flags are BUF_NORMAL (the
normal adaptive kernel algorithm), BUF_RANDOM (no page prefetching),
BUF_SEQUENTIAL (prefetch and swapout), BUF_WILLNEED (load everything with
prefetch), BUF_DONTNEED (swapout). These buffer management modes are not
persistent. Returns the BAT operated upon.
-
command bat.setMemoryMap(b:bat[:oid,:any_2],mode:int):bit
address BKCmmap2;
comment Alias for mmap(b, mode, mode, mode, mode)
@@ -39420,6 +39396,10 @@ command iterator.new(b:bat[:oid,:any_2],
address ITRnewChunk;
comment Create an iterator with fixed granule size. The result is a view.
+command json.aggr(val:bat[:oid,:dbl]):str
+address JSONgroupStr;
+comment Aggregate the double values to array.
+
command json.aggr(val:bat[:oid,:str]):str
address JSONgroupStr;
comment Aggregate the string values to array.
@@ -39526,10 +39506,18 @@ pattern json.renderarray(val:any...):jso
address JSONrenderarray;
pattern json.renderobject(val:any...):json
address JSONrenderobject;
+command
json.subaggr(val:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_1],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:str]
+address JSONsubjsoncand;
+comment Grouped aggregation of values with candidates list.
+
command
json.subaggr(val:bat[:oid,:str],g:bat[:oid,:oid],e:bat[:oid,:any_1],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:str]
address JSONsubjsoncand;
comment Grouped aggregation of values with candidates list.
+command
json.subaggr(val:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_1],skip_nils:bit):bat[:oid,:str]
+address JSONsubjson;
+comment Grouped aggregation of values.
+
command
json.subaggr(val:bat[:oid,:str],g:bat[:oid,:oid],e:bat[:oid,:any_1],skip_nils:bit):bat[:oid,:str]
address JSONsubjson;
comment Grouped aggregation of values.
diff --git a/clients/Tests/MAL-signatures_sphinxclient.stable.out
b/clients/Tests/MAL-signatures_sphinxclient.stable.out
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list