Changeset: b54ae46996d0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b54ae46996d0
Added Files:
monetdb5/extras/jaql/json_jaql.c
monetdb5/extras/jaql/json_jaql.h
monetdb5/extras/jaql/json_jaql.mal
monetdb5/modules/atoms/Tests/json09.mal
monetdb5/modules/atoms/Tests/json09.stable.err
monetdb5/modules/atoms/Tests/json09.stable.out
monetdb5/modules/atoms/Tests/json10.mal
monetdb5/modules/atoms/Tests/json10.stable.err
monetdb5/modules/atoms/Tests/json10.stable.out
monetdb5/modules/atoms/Tests/json11.mal
monetdb5/modules/atoms/Tests/json11.stable.err
monetdb5/modules/atoms/Tests/json11.stable.out
monetdb5/modules/atoms/Tests/json12.mal
monetdb5/modules/atoms/Tests/json12.stable.err
monetdb5/modules/atoms/Tests/json12.stable.out
monetdb5/modules/atoms/Tests/json13.mal
monetdb5/modules/atoms/Tests/json13.stable.err
monetdb5/modules/atoms/Tests/json13.stable.out
monetdb5/modules/atoms/Tests/json14.mal
monetdb5/modules/atoms/Tests/json14.stable.err
monetdb5/modules/atoms/Tests/json14.stable.out
monetdb5/modules/atoms/Tests/json15.mal
monetdb5/modules/atoms/Tests/json15.stable.err
monetdb5/modules/atoms/Tests/json15.stable.out
monetdb5/modules/atoms/json.c
monetdb5/modules/atoms/json.h
monetdb5/modules/atoms/json.mal
monetdb5/modules/mal/Tests/imprints.mal
monetdb5/modules/mal/Tests/imprints.stable.err
monetdb5/modules/mal/Tests/imprints.stable.out
sql/benchmarks/nobench/Tests/All
sql/benchmarks/nobench/Tests/nobench.sql
sql/benchmarks/nobench/Tests/nobench.stable.err
sql/benchmarks/nobench/Tests/nobench.stable.out
sql/test/BugTracker-2014/Tests/create-view-crash.Bug-3414.sql
sql/test/BugTracker-2014/Tests/create-view-crash.Bug-3414.stable.err
sql/test/BugTracker-2014/Tests/create-view-crash.Bug-3414.stable.out
sql/test/BugTracker-2014/Tests/current_timestamp.Bug-3427.sql
sql/test/BugTracker-2014/Tests/current_timestamp.Bug-3427.stable.err
sql/test/BugTracker-2014/Tests/current_timestamp.Bug-3427.stable.out
sql/test/BugTracker-2014/Tests/groupby_distict.Bug-3423.sql
sql/test/BugTracker-2014/Tests/groupby_distict.Bug-3423.stable.err
sql/test/BugTracker-2014/Tests/groupby_distict.Bug-3423.stable.out
sql/test/BugTracker-2014/Tests/indices.Bug-3435.sql
sql/test/BugTracker-2014/Tests/indices.Bug-3435.stable.err
sql/test/BugTracker-2014/Tests/indices.Bug-3435.stable.out
sql/test/BugTracker-2014/Tests/sample-crash.Bug-3429.sql
sql/test/BugTracker-2014/Tests/sample-crash.Bug-3429.stable.err
sql/test/BugTracker-2014/Tests/sample-crash.Bug-3429.stable.out
sql/test/BugTracker-2014/Tests/temporary.Bug-3430.sql
sql/test/BugTracker-2014/Tests/two-column-aggr-with-null.Bug-3428.sql
sql/test/BugTracker-2014/Tests/two-column-aggr-with-null.Bug-3428.stable.err
sql/test/BugTracker-2014/Tests/two-column-aggr-with-null.Bug-3428.stable.out
sql/test/BugTracker-2014/Tests/utf8bom.Bug-3436.SQL.py
sql/test/BugTracker-2014/Tests/utf8bom.Bug-3436.stable.err
sql/test/BugTracker-2014/Tests/utf8bom.Bug-3436.stable.out
sql/test/BugTracker-2014/Tests/utf8bom.Bug-3436.zip
sql/test/bugs/Tests/substring_limit_bug.sql
sql/test/bugs/Tests/substring_limit_bug.stable.err
sql/test/bugs/Tests/substring_limit_bug.stable.out
sql/test/json/Tests/load.sql
sql/test/json/Tests/load.stable.err
sql/test/json/Tests/load.stable.out
Removed Files:
monetdb5/extras/jaql/json.c
monetdb5/extras/jaql/json.h
monetdb5/extras/jaql/json.mal
monetdb5/modules/atoms/Tests/json06.stable.err
monetdb5/modules/atoms/Tests/json06.stable.out
monetdb5/modules/atoms/json_atom.c
monetdb5/modules/atoms/json_atom.h
monetdb5/modules/atoms/json_atom.mal
Modified Files:
.hgtags
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/Tests/All
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.32bit
clients/Tests/SQL-dump_gsl.stable.out
clients/Tests/SQL-dump_nogeom.stable.out
clients/Tests/exports.stable.out
clients/mapiclient/tomograph.c
clients/mapilib/mapi.rc
clients/odbc/driver/ODBCUtil.c
clients/odbc/driver/SQLGetInfo.c
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
clients/python2/setup.py
clients/python3/setup.py
common/stream/stream.c
configure.ag
debian/changelog
debian/monetdb5-jaql.install
debian/monetdb5-server.install
gdk/gdk.h
gdk/gdk_bat.c
gdk/gdk_calc.c
gdk/gdk_heap.c
gdk/gdk_imprints.c
gdk/gdk_logger.c
gdk/gdk_private.h
gdk/gdk_sample.c
gdk/gdk_search.c
gdk/gdk_select.c
gdk/gdk_storage.c
gdk/libbat.rc
libversions
monetdb5/extras/jaql/30_jaql.mal
monetdb5/extras/jaql/Makefile.ag
monetdb5/extras/jaql/jaql.c
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err.Windows
monetdb5/extras/rdf/rdf_shredder.c
monetdb5/mal/mal_builder.c
monetdb5/mal/mal_builder.h
monetdb5/mal/mal_instruction.c
monetdb5/mal/mal_interpreter.c
monetdb5/mal/mal_profiler.c
monetdb5/modules/atoms/Makefile.ag
monetdb5/modules/atoms/Tests/All
monetdb5/modules/atoms/Tests/json00.stable.out
monetdb5/modules/atoms/Tests/json01.mal
monetdb5/modules/atoms/Tests/json01.stable.out
monetdb5/modules/atoms/Tests/json03.mal
monetdb5/modules/atoms/Tests/json03.stable.out
monetdb5/modules/atoms/Tests/json04.mal
monetdb5/modules/atoms/Tests/json04.stable.out
monetdb5/modules/atoms/Tests/json05.mal
monetdb5/modules/atoms/Tests/json05.stable.out
monetdb5/modules/atoms/Tests/json07.mal
monetdb5/modules/atoms/Tests/json07.stable.out
monetdb5/modules/atoms/Tests/json08.mal
monetdb5/modules/atoms/Tests/json08.stable.out
monetdb5/modules/atoms/url.c
monetdb5/modules/kernel/algebra.c
monetdb5/modules/kernel/algebra.h
monetdb5/modules/kernel/algebra.mal
monetdb5/modules/kernel/bat5.c
monetdb5/modules/kernel/batstr.c
monetdb5/modules/mal/Tests/All
monetdb5/modules/mal/batExtensions.c
monetdb5/modules/mal/batExtensions.h
monetdb5/modules/mal/batExtensions.mal
monetdb5/modules/mal/bbp.c
monetdb5/modules/mal/bbp.h
monetdb5/modules/mal/bbp.mal
monetdb5/modules/mal/mal_init.mal
monetdb5/modules/mal/querylog.c
monetdb5/modules/mal/urlbox.c
monetdb5/optimizer/opt_multiplex.c
monetdb5/optimizer/opt_statistics.c
monetdb5/tests/gdkTests/Tests/casts.stable.out.Windows
monetdb5/tests/gdkTests/Tests/casts.stable.out.Windows.64bit.oid64
monetdb5/tests/gdkTests/Tests/casts.stable.out.oid64
monetdb5/tools/libmonetdb5.rc
sql/backends/monet5/datacell/basket.c
sql/backends/monet5/datacell/emitter.c
sql/backends/monet5/datacell/petrinet.c
sql/backends/monet5/datacell/receptor.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql.mal
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_inspect.mal
sql/backends/monet5/sql_scenario.c
sql/benchmarks/tpch/Tests/16-plan.stable.out
sql/include/sql_catalog.h
sql/rel.txt
sql/scripts/25_debug.sql
sql/scripts/40_json.sql
sql/scripts/75_storagemodel.sql
sql/server/rel_optimizer.c
sql/server/rel_schema.c
sql/server/rel_select.c
sql/server/rel_updates.c
sql/server/sql_atom.c
sql/server/sql_atom.h
sql/server/sql_parser.y
sql/server/sql_scan.c
sql/storage/bat/bat_logger.c
sql/storage/bat/bat_storage.c
sql/storage/bat/bat_table.c
sql/storage/restrict/restrict_logger.c
sql/storage/sql_storage.h
sql/storage/store.c
sql/test/ADT2006/Tests/sander.stable.err
sql/test/BugTracker-2011/Tests/extract_seconds.Bug-2793.sql
sql/test/BugTracker-2011/Tests/extract_seconds.Bug-2793.stable.out
sql/test/BugTracker-2012/Tests/All
sql/test/BugTracker-2012/Tests/currenttime.Bug-2781.py
sql/test/BugTracker-2012/Tests/date_script_test.Bug-2973.stable.out.Windows
sql/test/BugTracker-2012/Tests/url_script_test.Bug-2972.sql.in
sql/test/BugTracker-2012/Tests/url_script_test.Bug-2972.stable.out
sql/test/BugTracker-2014/Tests/All
sql/test/Tests/identifiers.stable.err
sql/test/Tests/identifiers.stable.out
sql/test/bugs/Tests/All
sql/test/bugs/Tests/crash_order_by.stable.out
sql/test/bugs/Tests/object_name-bug-sf-985242.stable.err
sql/test/bugs/Tests/object_name-bug-sf-985242.stable.out
sql/test/bugs/Tests/simple_view.stable.out
sql/test/bugs/Tests/subselect_multiple_unionall_where_1=1-bug-sf-1005596.stable.out
sql/test/bugs/object_name-bug-sf-985242.sql
sql/test/create_in_schema.sql
sql/test/identifiers.sql
sql/test/json/Tests/All
sql/test/json/Tests/books.sql
sql/test/json/Tests/books.stable.out
sql/test/json/Tests/bulkjson.sql
sql/test/json/Tests/bulkjson.stable.out
sql/test/json/Tests/bulkvalid.sql
sql/test/json/Tests/bulkvalid.stable.out
sql/test/json/Tests/parsing.sql
sql/test/json/Tests/parsing.stable.err
sql/test/json/Tests/pathexpr.sql
sql/test/json/Tests/pathexpr.stable.err
sql/test/json/Tests/pathexpr.stable.out
sql/test/json/Tests/pgexample.stable.out
sql/test/leaks/Tests/check0.stable.out
sql/test/leaks/Tests/check0_gsl.stable.out
sql/test/leaks/Tests/check0_nogeom.stable.out
sql/test/leaks/Tests/check1.stable.out
sql/test/leaks/Tests/check1_gsl.stable.out
sql/test/leaks/Tests/check1_nogeom.stable.out
sql/test/leaks/Tests/check2.stable.out
sql/test/leaks/Tests/check2_gsl.stable.out
sql/test/leaks/Tests/check2_nogeom.stable.out
sql/test/leaks/Tests/check3.stable.out
sql/test/leaks/Tests/check3_gsl.stable.out
sql/test/leaks/Tests/check3_nogeom.stable.out
sql/test/leaks/Tests/check4.stable.out
sql/test/leaks/Tests/check4_gsl.stable.out
sql/test/leaks/Tests/check4_nogeom.stable.out
sql/test/leaks/Tests/check5.stable.out
sql/test/leaks/Tests/check5_gsl.stable.out
sql/test/leaks/Tests/check5_nogeom.stable.out
sql/test/leaks/Tests/drop3.stable.out
sql/test/leaks/Tests/drop3_gsl.stable.out
sql/test/leaks/Tests/drop3_nogeom.stable.out
sql/test/leaks/Tests/select1.stable.out
sql/test/leaks/Tests/select1_gsl.stable.out
sql/test/leaks/Tests/select1_nogeom.stable.out
sql/test/leaks/Tests/select2.stable.out
sql/test/leaks/Tests/select2_gsl.stable.out
sql/test/leaks/Tests/select2_nogeom.stable.out
sql/test/leaks/Tests/temp1.stable.out
sql/test/leaks/Tests/temp1_gsl.stable.out
sql/test/leaks/Tests/temp1_nogeom.stable.out
sql/test/leaks/Tests/temp2.stable.out
sql/test/leaks/Tests/temp2_gsl.stable.out
sql/test/leaks/Tests/temp2_nogeom.stable.out
sql/test/leaks/Tests/temp3.stable.out
sql/test/leaks/Tests/temp3_gsl.stable.out
sql/test/leaks/Tests/temp3_nogeom.stable.out
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-upgrade/Tests/upgrade.stable.out
testing/Mtest.py.in
tools/merovingian/utils/control.c
vertoo.data
Branch: default
Log Message:
merge with default
diffs (truncated from 50759 to 300 lines):
diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -544,3 +544,12 @@ 09c8c6c3f81fe53b0a38727e676f379715d012cf
9915299bca802fd03d36e59a59f4711e7c82a503 Jan2014_root
1f6d48b7e4fadc757eaf87ea2295e662c76369b2 Jan2014_1
0193a77a33c5b396255966be4816d396b7f0889f Jan2014_release
+234ac4db8598c955a975f1da8b63ac25eb8b0d75 Jan2014_3
+0193a77a33c5b396255966be4816d396b7f0889f Jan2014_release
+0dde9d886d08c52bb27f6517dafd91101bf66246 Jan2014_release
+ffb7f23188e48470dfe38d4821c675c99c8fef71 Jan2014_5
+0dde9d886d08c52bb27f6517dafd91101bf66246 Jan2014_release
+493536e9b1f592ef08778febca455c329945cd91 Jan2014_release
+b0ebdc497497292f4a6cb340da3e1340e3407466 Jan2014_7
+493536e9b1f592ef08778febca455c329945cd91 Jan2014_release
+fb702cba0210295b29825b095ed87d92b6645434 Jan2014_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -435,13 +435,14 @@ automatic index management, extensibilit
accelerators. It also has an SQL frontend.
This package contains the JAQL extension for MonetDB. JAQL is a
-querly language for JavaScript Object Notation (JSON).
+query language for JavaScript Object Notation (JSON).
%files jaql
%defattr(-,root,root)
%{_libdir}/monetdb5/autoload/*_jaql.mal
%{_libdir}/monetdb5/jaql*.mal
-%{_libdir}/monetdb5/json*.mal
+%{_libdir}/monetdb5/json.mal
+%{_libdir}/monetdb5/json_util.mal
%{_libdir}/monetdb5/lib_jaql.so
%{_libdir}/monetdb5/lib_json.so
@@ -497,7 +498,8 @@ fi
# %exclude %{_libdir}/monetdb5/rdf.mal
%exclude %{_libdir}/monetdb5/sql.mal
%exclude %{_libdir}/monetdb5/jaql*.mal
-%exclude %{_libdir}/monetdb5/json*.mal
+%exclude %{_libdir}/monetdb5/json.mal
+%exclude %{_libdir}/monetdb5/json_util.mal
%{_libdir}/monetdb5/*.mal
# %{_libdir}/monetdb5/autoload/*_fits.mal
%{_libdir}/monetdb5/autoload/*_lsst.mal
@@ -796,6 +798,29 @@ mv $RPM_BUILD_ROOT%{_datadir}/doc/MonetD
rm -fr $RPM_BUILD_ROOT
%changelog
+* Fri Feb 07 2014 Sjoerd Mullender <[email protected]> - 11.17.7-20140207
+- Rebuilt.
+- BZ#3436: COPY INTO from file containing leading Byte Order Mark (BOM)
+ causes corruption
+
+* Thu Feb 06 2014 Sjoerd Mullender <[email protected]> - 11.17.5-20140206
+- Rebuilt.
+- BZ#3420: Database does not start after upgrade
+- BZ#3425: Temporal extraction glitches
+- BZ#3427: Consistent use of current_timestamp and now()
+- BZ#3428: Aggregation over two columns is broken
+- BZ#3429: SAMPLE on JOIN result crashes server
+- BZ#3430: Wrong temporary handling
+- BZ#3431: SQLGetInfo returns incorrect value for SQL_FN_NUM_TRUNCATE
+- BZ#3432: MonetDB SQL syntax incompatible with SQL-92 <delimited
+ identifier> syntax
+
+* Sat Jan 25 2014 Sjoerd Mullender <[email protected]> - 11.17.3-20140125
+- Rebuilt.
+- BZ#3418: Segmentation fault on a query from table expression
+- BZ#3419: Database does not start after upgrade
+- BZ#3423: Group by alias with distinct count doesn't work
+
* Tue Jan 14 2014 Sjoerd Mullender <[email protected]> - 11.17.1-20140114
- Rebuilt.
- BZ#3040: Wrong NULL behavior in EXCEPT and INTERSECT
diff --git a/clients/Tests/All b/clients/Tests/All
--- a/clients/Tests/All
+++ b/clients/Tests/All
@@ -2,7 +2,7 @@ exports
HAVE_GEOM&HAVE_CFITSIO&!HAVE_SPHINXCLIENT&!HAVE_GSL?MAL-signatures
HAVE_GEOM&HAVE_CFITSIO&!HAVE_SPHINXCLIENT&HAVE_GSL?MAL-signatures_gsl
HAVE_GEOM&HAVE_CFITSIO&HAVE_SPHINXCLIENT&!HAVE_GSL?MAL-signatures_sphinxclient
-!HAVE_CFITSIO&HAVE_GEOM&!HAVE_SPHINXCLIENT&!HAVE_GSL?MAL-signatures_nocfitsio
+HAVE_GEOM&!HAVE_CFITSIO&!HAVE_SPHINXCLIENT&!HAVE_GSL?MAL-signatures_nocfitsio
HAVE_GEOM&!HAVE_GSL?SQL-dump
HAVE_GEOM&HAVE_GSL?SQL-dump_gsl
!HAVE_GEOM&!HAVE_GSL?SQL-dump_nogeom
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
@@ -2509,10 +2509,6 @@ command algebra.materialize(b:bat[:oid,:
address ALGmaterialize;
comment Materialize the void column
-command algebra.merge(b:bat[:oid,:oid]):bat[:lng,:oid]
-address ALGmerge;
-comment Merge head and tail into a single value
-
command
algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid]
address ALGmark_grp_2;
comment "grouped mark": Produces a new BAT with per group a locally unique
dense ascending sequense of OIDs in the tail. The tail of the first BAT (b)
identifies the group that each BUN of b belongs to. The second BAT (g)
represents the group extent, i.e., the head is the unique list of group IDs
from b's tail. The third argument (s) gives the base value for the new OID
sequence of each group.
@@ -2595,10 +2591,6 @@ pattern algebra.semijoinPath(l:bat[:any,
address ALGjoinPath;
comment Routine to handle join paths. The type analysis is rather tricky.
-command algebra.split(b:bat[:lng,:oid]):bat[:oid,:oid]
-address ALGsplit;
-comment Split head into two values
-
command
algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng)
(X_8:bat[:oid,:oid],X_9:bat[:oid,:oid])
address ALGsubthetajoin;
comment Theta join with candidate lists
@@ -31852,6 +31844,34 @@ command bat.hasAppendMode(b:bat[:any_1,:
address BKChasAppendMode;
comment return true if to this BAT is append only.
+command bat.imprintsize(b:bat[:oid,:dbl]):lng
+address CMDBATimprintsize;
+comment Return the size of the imprints
+
+command bat.imprintsize(b:bat[:oid,:flt]):lng
+address CMDBATimprintsize;
+command bat.imprintsize(b:bat[:oid,:lng]):lng
+address CMDBATimprintsize;
+command bat.imprintsize(b:bat[:oid,:int]):lng
+address CMDBATimprintsize;
+command bat.imprintsize(b:bat[:oid,:sht]):lng
+address CMDBATimprintsize;
+command bat.imprintsize(b:bat[:oid,:bte]):lng
+address CMDBATimprintsize;
+command bat.imprints(b:bat[:oid,:dbl]):void
+address CMDBATimprints;
+comment Check/create an imprint index on the BAT
+
+command bat.imprints(b:bat[:oid,:flt]):void
+address CMDBATimprints;
+command bat.imprints(b:bat[:oid,:lng]):void
+address CMDBATimprints;
+command bat.imprints(b:bat[:oid,:int]):void
+address CMDBATimprints;
+command bat.imprints(b:bat[:oid,:sht]):void
+address CMDBATimprints;
+command bat.imprints(b:bat[:oid,:bte]):void
+address CMDBATimprints;
command bat.intersectcand(a:bat[:oid,:oid],b:bat[:oid,:oid]):bat[:oid,:oid]
address BKCintersectcand;
comment Intersect two candidate lists into one
@@ -31961,11 +31981,11 @@ address BKCorder;
comment Sorts the BAT itself on the head, in place.
pattern bat.partition(b:bat[:oid,:any_1],pieces:int,n:int):bat[:oid,:any_1]
-address CMDbatpartition2;
+address CMDBATpartition2;
comment Create the n-th slice over the BAT broken into severral pieces.
pattern bat.partition(b:bat[:oid,:any_1]):bat[:oid,:any_1]...
-address CMDbatpartition;
+address CMDBATpartition;
comment Create a serie of slices over the BAT argument. The BUNs are
distributed evenly.
command bat.reuseMap(b:bat[:oid,:any_1],del:bat[:oid,:oid]):bat[:oid,:oid]
@@ -32208,7 +32228,7 @@ command bbp.getName(b:bat[:oid,:any_2]):
address CMDbbpName;
comment Map a BAT into its internal name
-command bbp.get()
(ns:bat[:any_1,:any_2],ht:bat[:int,:str],tt:bat[:int,:str],cnt:bat[:int,:lng],refcnt:bat[:int,:int],lrefcnt:bat[:int,:int],location:bat[:int,:str],heat:bat[:int,:int],dirty:bat[:int,:str],status:bat[:int,:str],kind:bat[:int,:str])
+command bbp.get()
(id:bat[:oid,:int],ns:bat[:oid,:str],ht:bat[:oid,:str],tt:bat[:oid,:str],cnt:bat[:oid,:lng],refcnt:bat[:oid,:int],lrefcnt:bat[:oid,:int],location:bat[:oid,:str],heat:bat[:oid,:int],dirty:bat[:oid,:str],status:bat[:oid,:str],kind:bat[:oid,:str])
address CMDbbp;
comment bpp
@@ -39684,6 +39704,8 @@ command json.drop(nme:str):void
address JSONdrop;
comment Drop the JSON object name from the database
+command json.dump(j:json):void
+address JSONdump;
command
json.extract(k:bat[:oid,:bte],s:bat[:oid,:str],i:bat[:oid,:lng],d:bat[:oid,:dbl],a:bat[:oid,:oid],o:bat[:oid,:oid],n:bat[:oid,:str],elems:bat[:oid,:oid],start:oid)
(kind:bat[:oid,:bte],string:bat[:oid,:str],integer:bat[:oid,:lng],double:bat[:oid,:dbl],array:bat[:oid,:oid],object:bat[:oid,:oid],name:bat[:oid,:str])
address JSONextract;
comment Extract the given elems (kind id) from the given JSON object
@@ -39692,19 +39714,39 @@ command json.exportResult(o:streams,kind
address JSONexportResult;
comment Serialise the given JSON pointer into JSON format, respecting the MAPI
protocol
+pattern json.fold(k:bat[:oid,:any]):json
+address JSONfold;
+comment Combine the value list into a single json array object.
+
+pattern json.fold(k:bat[:oid,:str],v:bat[:oid,:any]):json
+address JSONfold;
+comment Combine the key-value pairs into a single json object list.
+
+pattern json.fold(o:bat[:oid,:oid],k:bat[:oid,:str],v:bat[:oid,:any]):json
+address JSONfold;
+comment Combine the key-value pairs into a single json object list.
+
+command json.filter(name:json,idx:lng,other:str):json
+address JSONfilterArrayDefault;
+comment Extract a single array element
+
command json.filter(name:json,idx:lng):json
address JSONfilterArray;
-comment Extract a single array element
-
+command json.filter(name:json,idx:int,other:str):json
+address JSONfilterArrayDefault;
command json.filter(name:json,idx:int):json
address JSONfilterArray;
+command json.filter(name:json,idx:sht,other:str):json
+address JSONfilterArrayDefault;
command json.filter(name:json,idx:sht):json
address JSONfilterArray;
+command json.filter(name:json,idx:bte,other:str):json
+address JSONfilterArrayDefault;
command json.filter(name:json,idx:bte):json
address JSONfilterArray;
command json.filter(name:json,pathexpr:str):json
address JSONfilter;
-comment Filter all members of an object by path expression
+comment Filter all members of an object by a path expression, returning an
array.Non-matching elements are skipped.
command json.#fromstr():json
address JSONfromString;
@@ -39734,13 +39776,17 @@ command json.isvalid(val:json):bit
address JSONisvalid;
comment Validate the string as a valid JSON document
+command json.integer(j:json):lng
+address JSONjson2integer;
+comment Convert sinple JSON values to an integer, return nil upon error.
+
command json.keys(val:json):bat[:oid,:str]
address JSONkeyTable;
comment Expands the outermost JSON object names.
command json.keyarray(val:json):json
address JSONkeyArray;
-comment Expands the outermost JSON object keys into a JSON array.
+comment Expands the outermost JSON object keys into a JSON value array.
command json.load(nme:str)
(kind:bat[:oid,:bte],string:bat[:oid,:str],integer:bat[:oid,:lng],double:bat[:oid,:dbl],array:bat[:oid,:oid],object:bat[:oid,:oid],name:bat[:oid,:str])
address JSONload;
@@ -39754,27 +39800,9 @@ command json.nextid(kind:bat[:oid,:bte])
address JSONnextid;
comment Returns the next free id for the kind BAT
-pattern json.nest(k:bat[:oid,:dbl]):json
-address JSONnest;
-comment Combine the value list into a single json array object.
-
-pattern json.nest(k:bat[:oid,:flt]):json
-address JSONnest;
-pattern json.nest(k:bat[:oid,:lng]):json
-address JSONnest;
-pattern json.nest(k:bat[:oid,:int]):json
-address JSONnest;
-pattern json.nest(k:bat[:oid,:sht]):json
-address JSONnest;
-pattern json.nest(k:bat[:oid,:str]):json
-address JSONnest;
-pattern json.nest(k:bat[:oid,:str],v:bat[:oid,:any]):json
-address JSONnest;
-comment Combine the key-value pairs into a single json object list.
-
-pattern json.nest(o:bat[:oid,:oid],k:bat[:oid,:str],v:bat[:oid,:any]):json
-address JSONnest;
-comment Nest the key-value pairs with object identity into a list of JSON
objects
+command json.number(j:json):dbl
+address JSONjson2number;
+comment Convert sinple JSON values to a double, return nil upon error.
command json.new(j:str):json
address JSONstr2json;
@@ -39811,9 +39839,13 @@ command json.str(j:json):str
address JSONjson2str;
comment Convert JSON to its string equivalent. Dealing with escape characters
+command json.text(j:json,s:str):str
+address JSONjson2textSeparator;
+comment Convert JSON values to their plain string equivalent, injecting a
separator.
+
command json.text(j:json):str
address JSONjson2text;
-comment Convert JSON to its plain string equivalent.
+comment Convert JSON values to their plain string equivalent.
command json.#tostr():str
address JSONtoString;
@@ -39827,17 +39859,13 @@ pattern json.unwraptype(kind:bat[:oid,:b
address JSONunwrap;
comment Retrieve the type necessary to unwrap the given JSON array to
-command json.unnest(val:json):bat[:oid,:json]
-address JSONunnestOne;
-comment Expands a JSON list to its elements.
-
-command json.unnest(val:json) (k:bat[:oid,:str],v:bat[:oid,:json])
-address JSONunnest;
+pattern json.unfold(val:json)
(o:bat[:oid,:oid],k:bat[:oid,:str],v:bat[:oid,:json])
+address JSONunfold;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list