Changeset: 805d4f32d3b6 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=805d4f32d3b6 Added Files: geom/BugTracker/Tests/copy_into_mbr.3492.modules geom/BugTracker/Tests/copy_into_mbr.3492.sql geom/BugTracker/Tests/copy_into_mbr.3492.stable.err geom/BugTracker/Tests/copy_into_mbr.3492.stable.out Modified Files: MonetDB.spec clients/R/MonetDB.R/DESCRIPTION clients/R/MonetDB.R/NEWS clients/R/MonetDB.R/R/control.R clients/R/MonetDB.R/R/monetdb.R 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 clients/mapiclient/dump.c clients/mapiclient/mclient.c clients/odbc/driver/ODBCConvert.c clients/odbc/driver/ODBCUtil.h clients/python2/monetdb/sql/monetize.py clients/python2/test/test_monetize.py clients/python3/monetdb/sql/monetize.py clients/python3/test/test_monetize.py gdk/gdk_logger.c gdk/gdk_logger.h gdk/gdk_sample.c gdk/gdk_unique.c geom/BugTracker/Tests/All geom/monetdb5/geom.c monetdb5/mal/mal_import.c monetdb5/modules/atoms/batxml.c monetdb5/modules/atoms/json.c monetdb5/modules/atoms/json.mal monetdb5/optimizer/opt_centipede.c monetdb5/optimizer/opt_pushselect.c sql/backends/monet5/sql_scenario.c sql/backends/monet5/sql_statistics.c sql/benchmarks/tpch/Tests/17-plan.stable.out sql/benchmarks/tpch/Tests/22-plan.stable.out sql/common/sql_types.c sql/scripts/40_json.sql sql/storage/bat/bat_logger.c sql/storage/store.c sql/test/BugTracker/Tests/between_with_column.SF-1959410.stable.err sql/test/Tests/systemfunctions.stable.out sql/test/Tests/systemfunctions_gsl.stable.out sql/test/Tests/systemfunctions_nogeom.stable.out sql/test/centipede/Tests/olap.stable.out sql/test/json/Tests/aggregate01.sql sql/test/json/Tests/aggregate01.stable.out sql/test/pg_regress/Tests/All sql/test/pg_regress/Tests/aggregates.stable.err sql/test/pg_regress/Tests/aggregates.stable.out sql/test/pg_regress/Tests/alter_table.sql sql/test/pg_regress/Tests/alter_table.stable.err sql/test/pg_regress/Tests/alter_table.stable.out sql/test/pg_regress/Tests/arrays.sql 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.sql 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/char.stable.err sql/test/pg_regress/Tests/char.stable.out sql/test/pg_regress/Tests/circle.stable.err sql/test/pg_regress/Tests/circle.stable.out sql/test/pg_regress/Tests/cluster.sql 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.sql 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.sql 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.sql 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/load.SQL.bat sql/test/pg_regress/Tests/load.SQL.sh 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.sql 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.sql 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.sql 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.sql sql/test/pg_regress/Tests/strings.stable.err sql/test/pg_regress/Tests/strings.stable.out 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.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/text.sql sql/test/pg_regress/Tests/text.stable.err sql/test/pg_regress/Tests/text.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/varchar.stable.err sql/test/pg_regress/Tests/varchar.stable.out sql/test/pg_regress/Tests/without_oid.stable.err sql/test/pg_regress/Tests/without_oid.stable.out sql/test/pg_regress/postgresql2sql99.sh sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out Branch: bamloader Log Message:
Merge with default branch diffs (truncated from 83919 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -531,11 +531,13 @@ fi # %exclude %{_libdir}/monetdb5/rdf.mal %exclude %{_libdir}/monetdb5/sql.mal %{_libdir}/monetdb5/*.mal -# %{_libdir}/monetdb5/autoload/*_fits.mal -%{_libdir}/monetdb5/autoload/*_lsst.mal -%{_libdir}/monetdb5/autoload/*_opt_sql_append.mal -%{_libdir}/monetdb5/autoload/*_udf.mal -%{_libdir}/monetdb5/autoload/*_vault.mal +%if %{?with_geos:1}%{!?with_geos:0} +%exclude %{_libdir}/monetdb5/autoload/*_geom.mal +%endif +%exclude %{_libdir}/monetdb5/autoload/*_gsl.mal +# %exclude %{_libdir}/monetdb5/autoload/*_rdf.mal +%exclude %{_libdir}/monetdb5/autoload/*_sql.mal +%{_libdir}/monetdb5/autoload/*.mal %if %{?with_geos:1}%{!?with_geos:0} %exclude %{_libdir}/monetdb5/lib_geom.so %endif diff --git a/clients/R/MonetDB.R/DESCRIPTION b/clients/R/MonetDB.R/DESCRIPTION --- a/clients/R/MonetDB.R/DESCRIPTION +++ b/clients/R/MonetDB.R/DESCRIPTION @@ -1,6 +1,6 @@ Package: MonetDB.R -Version: 0.9.2 -Date: 2013-04-22 +Version: 0.9.3 +Date: 2013-06-12 Title: Connect MonetDB to R Authors@R: c(person("Hannes Muehleisen", role = c("aut", "cre"),email = "han...@cwi.nl"), person("Thomas Lumley", role = "ctb"), diff --git a/clients/R/MonetDB.R/NEWS b/clients/R/MonetDB.R/NEWS --- a/clients/R/MonetDB.R/NEWS +++ b/clients/R/MonetDB.R/NEWS @@ -1,3 +1,7 @@ +0.9.3 +- Remove trailing slashes for monetdb.program.path parameter for monetdb.server.setup (Thanks, Anthony!) +- fixed monetdbd.liststatus (Thanks, Bart) + 0.9.2 - monetdb_queryinfo method to find out things about an arbitrary query cheaply - new options monetdb.sequential, monetdb.debug.query and monetdb.debug.mapi diff --git a/clients/R/MonetDB.R/R/control.R b/clients/R/MonetDB.R/R/control.R --- a/clients/R/MonetDB.R/R/control.R +++ b/clients/R/MonetDB.R/R/control.R @@ -114,6 +114,8 @@ monetdb.server.setup <- # switch all slashes to match windows monetdb.program.path <- normalizePath( monetdb.program.path , mustWork = FALSE ) + # remove trailing slash from paths, otherwise the server won't start + monetdb.program.path <- gsub("\\\\$|/$", "", monetdb.program.path) database.directory <- normalizePath( database.directory , mustWork = FALSE ) # if the database directory does not exist, print that it's being created @@ -234,7 +236,8 @@ monetdbd.liststatus <- monetdb.liststatu lines <- lines[grepl("^=sabdb:2:", lines)] # make sure we get a db list here, protocol v.2 lines <- sub("=sabdb:2:", "", lines, fixed=T) # convert value into propert types etc - dbdf <- as.data.frame(do.call("rbind", strsplit(lines, ", ", fixed=T)), stringsAsFactors=F) + dbdf <- as.data.frame(do.call("rbind", strsplit(lines, ",", fixed=T)), stringsAsFactors=F) + names(dbdf) <- c("dbname", "uri", "locked", "state", "scenarios", "startCounter", "stopCounter", "crashCounter", "avgUptime", "maxUptime", "minUptime", "lastCrash", "lastStart", "lastStop", "crashAvg1", "crashAvg10", "crashAvg30") @@ -266,4 +269,4 @@ monetdbd.liststatus <- monetdb.liststatu dbdf$scenarios <- gsub("'", ", ", dbdf$scenarios, fixed=T) return(dbdf[order(dbdf$dbname), ]) -} \ No newline at end of file +} diff --git a/clients/R/MonetDB.R/R/monetdb.R b/clients/R/MonetDB.R/R/monetdb.R --- a/clients/R/MonetDB.R/R/monetdb.R +++ b/clients/R/MonetDB.R/R/monetdb.R @@ -21,7 +21,7 @@ MonetR <- MonetDB <- MonetDBR <- MonetDB setMethod("dbGetInfo", "MonetDBDriver", def=function(dbObj, ...) list(name="MonetDBDriver", - driver.version="0.9.2", + driver.version="0.9.3", DBI.version="0.2-7", client.version=NA, max.connections=NA) 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 "SZFMT"\n", - response_buf_len); + printf("II: Reallocating memory, new size %lu\n", + (unsigned long) 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 @@ -236,6 +236,14 @@ command aggr.histogram(b:bat[:any_1,:any address ALGhistogram; comment Produce a BAT containing the histogram over the tail values. +command aggr.jsonaggr(val:bat[:oid,:dbl]):str +address JSONgroupStr; +comment Aggregate the double values to array. + +command aggr.jsonaggr(val:bat[:oid,:str]):str +address JSONgroupStr; +comment Aggregate the string values to array. + function aggr.median(b:bat[:oid,:any_1]):any_1; command aggr.median(b:bat[:oid,:any_1],g:bat[:oid,:oid],e:bat[:oid,:any_2]):bat[:oid,:any_1] address AGGRmedian3; @@ -774,6 +782,22 @@ command aggr.quantile(b:bat[:oid,:any_1] address AGGRquantile3; comment Grouped quantile aggregate +command aggr.subjsonaggr(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 aggr.subjsonaggr(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 aggr.subjsonaggr(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 aggr.subjsonaggr(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. + command aggr.subquantile(b:bat[:oid,:any_1],q:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_2],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:any_1] address AGGRsubquantilecand; comment Grouped median quantile with candidate list @@ -39420,14 +39444,6 @@ 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. - command json.dump(j:json):void address JSONdump; pattern json.fold(k:bat[:oid,:any]):json @@ -39530,22 +39546,6 @@ 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. - command json.suboutput(b:bat[:oid,:any_1],gid:bat[:oid,:oid],ext:bat[:oid,:wrd],flg:bit):bat[:oid,:str] address JSONtextGrouped; comment Pack the values into a json structure 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 @@ -236,6 +236,14 @@ command aggr.histogram(b:bat[:any_1,:any address ALGhistogram; comment Produce a BAT containing the histogram over the tail values. +command aggr.jsonaggr(val:bat[:oid,:dbl]):str +address JSONgroupStr; +comment Aggregate the double values to array. + +command aggr.jsonaggr(val:bat[:oid,:str]):str +address JSONgroupStr; +comment Aggregate the string values to array. + function aggr.median(b:bat[:oid,:any_1]):any_1; command aggr.median(b:bat[:oid,:any_1],g:bat[:oid,:oid],e:bat[:oid,:any_2]):bat[:oid,:any_1] address AGGRmedian3; @@ -774,6 +782,22 @@ command aggr.quantile(b:bat[:oid,:any_1] address AGGRquantile3; comment Grouped quantile aggregate +command aggr.subjsonaggr(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 aggr.subjsonaggr(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 aggr.subjsonaggr(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 aggr.subjsonaggr(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. + command aggr.subquantile(b:bat[:oid,:any_1],q:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_2],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:any_1] address AGGRsubquantilecand; comment Grouped median quantile with candidate list @@ -39436,14 +39460,6 @@ 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. - command json.dump(j:json):void address JSONdump; pattern json.fold(k:bat[:oid,:any]):json @@ -39546,22 +39562,6 @@ 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. - command json.suboutput(b:bat[:oid,:any_1],gid:bat[:oid,:oid],ext:bat[:oid,:wrd],flg:bit):bat[:oid,:str] address JSONtextGrouped; comment Pack the values into a json structure 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 @@ -236,6 +236,14 @@ command aggr.histogram(b:bat[:any_1,:any address ALGhistogram; comment Produce a BAT containing the histogram over the tail values. +command aggr.jsonaggr(val:bat[:oid,:dbl]):str +address JSONgroupStr; +comment Aggregate the double values to array. + +command aggr.jsonaggr(val:bat[:oid,:str]):str +address JSONgroupStr; +comment Aggregate the string values to array. + function aggr.median(b:bat[:oid,:any_1]):any_1; command aggr.median(b:bat[:oid,:any_1],g:bat[:oid,:oid],e:bat[:oid,:any_2]):bat[:oid,:any_1] address AGGRmedian3; @@ -774,6 +782,22 @@ command aggr.quantile(b:bat[:oid,:any_1] address AGGRquantile3; comment Grouped quantile aggregate +command aggr.subjsonaggr(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 aggr.subjsonaggr(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 aggr.subjsonaggr(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 aggr.subjsonaggr(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. + command aggr.subquantile(b:bat[:oid,:any_1],q:bat[:oid,:dbl],g:bat[:oid,:oid],e:bat[:oid,:any_2],s:bat[:oid,:oid],skip_nils:bit):bat[:oid,:any_1] address AGGRsubquantilecand; comment Grouped median quantile with candidate list @@ -39396,14 +39420,6 @@ command iterator.new(b:bat[:oid,:any_2], _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list