Changeset: b955590aeba4 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/b955590aeba4 Modified Files: clients/Tests/MAL-signatures-hge.test clients/Tests/MAL-signatures.test clients/Tests/exports.stable.out gdk/gdk.h gdk/gdk_bat.c gdk/gdk_batop.c gdk/gdk_bbp.c gdk/gdk_string.c monetdb5/modules/kernel/batstr.c sql/backends/monet5/sql_result.c Branch: ascii-flag Log Message:
Merge with default branch. diffs (truncated from 164856 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -679,7 +679,6 @@ This package contains files needed to de %files SQL-server5-devel %defattr(-,root,root) -%{_includedir}/monetdb/exception_buffer.h %{_includedir}/monetdb/opt_backend.h %{_includedir}/monetdb/rel_*.h %{_includedir}/monetdb/sql*.h diff --git a/NT/mksqlwxs.py b/NT/mksqlwxs.py --- a/NT/mksqlwxs.py +++ b/NT/mksqlwxs.py @@ -187,7 +187,7 @@ def main(): print(r' <Directory Id="include" Name="include">') print(r' <Directory Id="monetdb" Name="monetdb">') id = comp(extend, id, 16, - sorted([r'include\monetdb\{}'.format(x) for x in filter(lambda x: (x.startswith('gdk') or x.startswith('monet') or x.startswith('mal') or x.startswith('sql') or x.startswith('rel') or x.startswith('store') or x.startswith('exception') or x.startswith('opt_backend')) and x.endswith('.h'), os.listdir(os.path.join(sys.argv[3], 'include', 'monetdb')))] + + sorted([r'include\monetdb\{}'.format(x) for x in filter(lambda x: (x.startswith('gdk') or x.startswith('monet') or x.startswith('mal') or x.startswith('sql') or x.startswith('rel') or x.startswith('store') or x.startswith('opt_backend')) and x.endswith('.h'), os.listdir(os.path.join(sys.argv[3], 'include', 'monetdb')))] + [r'include\monetdb\copybinary.h', r'include\monetdb\mapi.h', r'include\monetdb\mapi_querytype.h', diff --git a/clients/Tests/MAL-signatures-hge.test b/clients/Tests/MAL-signatures-hge.test --- a/clients/Tests/MAL-signatures-hge.test +++ b/clients/Tests/MAL-signatures-hge.test @@ -5,34707 +5,34387 @@ select * from sys.malfunctions() order b ---- aggr Collect -command aggr.Collect(X_0:bat[:wkb]):wkb +command aggr.Collect(X_0:bat[:wkb]):wkb wkbCollectAggr; TODO aggr MakeLine -command aggr.MakeLine(X_0:bat[:wkb]):wkb +command aggr.MakeLine(X_0:bat[:wkb]):wkb wkbMakeLineAggr; Gets a BAT with point or linestring geometries and returns a single linestring geometry aggr all -command aggr.all(X_0:bat[:any_1]):any_1 +command aggr.all(X_0:bat[:any_1]):any_1 SQLall; if all values in b are equal return this, else nil aggr allnotequal -pattern aggr.allnotequal(X_0:bat[:any_1], X_1:bat[:any_1]):bit +pattern aggr.allnotequal(X_0:bat[:any_1], X_1:bat[:any_1]):bit SQLallnotequal; if all values in r are not equal to l, return true, else if r has nil, return nil, else return false aggr anyequal -pattern aggr.anyequal(X_0:any_1, X_1:any_1):bit +pattern aggr.anyequal(X_0:any_1, X_1:any_1):bit CMDvarEQ; (empty) aggr anyequal -pattern aggr.anyequal(X_0:bat[:any_1], X_1:bat[:any_1]):bit +pattern aggr.anyequal(X_0:bat[:any_1], X_1:bat[:any_1]):bit SQLanyequal; if any value in r is equal to l, return true, else if r has nil, return nil, else return false aggr avg -command aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] +command aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] AGGRavg13_dbl; Grouped tail average on bte aggr avg -command aggr.avg(X_0:bat[:dbl], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] +command aggr.avg(X_0:bat[:dbl], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] AGGRavg13_dbl; Grouped tail average on dbl aggr avg -command aggr.avg(X_0:bat[:flt], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] +command aggr.avg(X_0:bat[:flt], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] AGGRavg13_dbl; Grouped tail average on flt aggr avg -command aggr.avg(X_0:bat[:hge], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] +command aggr.avg(X_0:bat[:hge], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] AGGRavg13_dbl; Grouped tail average on hge aggr avg -command aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] +command aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] AGGRavg13_dbl; Grouped tail average on int aggr avg -command aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] +command aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] AGGRavg13_dbl; Grouped tail average on lng aggr avg -command aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] +command aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bat[:any_1]):bat[:dbl] AGGRavg13_dbl; Grouped tail average on sht aggr avg -command aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] +command aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] AGGRavg14_dbl; Grouped tail average on bte aggr avg -command aggr.avg(X_0:bat[:dbl], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] +command aggr.avg(X_0:bat[:dbl], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] AGGRavg14_dbl; Grouped tail average on dbl aggr avg -command aggr.avg(X_0:bat[:flt], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] +command aggr.avg(X_0:bat[:flt], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] AGGRavg14_dbl; Grouped tail average on flt aggr avg -command aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] +command aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] AGGRavg14_dbl; Grouped tail average on int aggr avg -command aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] +command aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] AGGRavg14_dbl; Grouped tail average on lng aggr avg -command aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] +command aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bat[:any_1], X_3:int):bat[:dbl] AGGRavg14_dbl; Grouped tail average on sht aggr avg -command aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) +command aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) AGGRavg23_dbl; Grouped tail average on bte, also returns count aggr avg -command aggr.avg(X_0:bat[:dbl], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) +command aggr.avg(X_0:bat[:dbl], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) AGGRavg23_dbl; Grouped tail average on dbl, also returns count aggr avg -command aggr.avg(X_0:bat[:flt], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) +command aggr.avg(X_0:bat[:flt], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) AGGRavg23_dbl; Grouped tail average on flt, also returns count aggr avg -command aggr.avg(X_0:bat[:hge], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) +command aggr.avg(X_0:bat[:hge], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) AGGRavg23_dbl; Grouped tail average on hge, also returns count aggr avg -command aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) +command aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) AGGRavg23_dbl; Grouped tail average on int, also returns count aggr avg -command aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) +command aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) AGGRavg23_dbl; Grouped tail average on lng, also returns count aggr avg -command aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) +command aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bat[:any_1]) (X_3:bat[:dbl], X_4:bat[:lng]) AGGRavg23_dbl; Grouped tail average on sht, also returns count aggr avg -command aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) +command aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) AGGRavg24_dbl; Grouped tail average on bte, also returns count aggr avg -command aggr.avg(X_0:bat[:dbl], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) +command aggr.avg(X_0:bat[:dbl], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) AGGRavg24_dbl; Grouped tail average on dbl, also returns count aggr avg -command aggr.avg(X_0:bat[:flt], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) +command aggr.avg(X_0:bat[:flt], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) AGGRavg24_dbl; Grouped tail average on flt, also returns count aggr avg -command aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) +command aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) AGGRavg24_dbl; Grouped tail average on int, also returns count aggr avg -command aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) +command aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) AGGRavg24_dbl; Grouped tail average on lng, also returns count aggr avg -command aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) +command aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bat[:any_1], X_3:int) (X_4:bat[:dbl], X_5:bat[:lng]) AGGRavg24_dbl; Grouped tail average on sht, also returns count aggr avg -pattern aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bit) (X_3:bte, X_4:lng, X_5:lng) +pattern aggr.avg(X_0:bat[:bte], X_1:bat[:oid], X_2:bit) (X_3:bte, X_4:lng, X_5:lng) CMDBATavg3; Calculate aggregate average of B. aggr avg -pattern aggr.avg(X_0:bat[:hge], X_1:bat[:oid], X_2:bit) (X_3:hge, X_4:lng, X_5:lng) +pattern aggr.avg(X_0:bat[:hge], X_1:bat[:oid], X_2:bit) (X_3:hge, X_4:lng, X_5:lng) CMDBATavg3; Calculate aggregate average of B. aggr avg -pattern aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bit) (X_3:int, X_4:lng, X_5:lng) +pattern aggr.avg(X_0:bat[:int], X_1:bat[:oid], X_2:bit) (X_3:int, X_4:lng, X_5:lng) CMDBATavg3; Calculate aggregate average of B. aggr avg -pattern aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bit) (X_3:lng, X_4:lng, X_5:lng) +pattern aggr.avg(X_0:bat[:lng], X_1:bat[:oid], X_2:bit) (X_3:lng, X_4:lng, X_5:lng) CMDBATavg3; Calculate aggregate average of B. aggr avg -pattern aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bit) (X_3:sht, X_4:lng, X_5:lng) +pattern aggr.avg(X_0:bat[:sht], X_1:bat[:oid], X_2:bit) (X_3:sht, X_4:lng, X_5:lng) CMDBATavg3; Calculate aggregate average of B. aggr avg -pattern aggr.avg(X_0:bat[:bte], X_1:bat[:lng], X_2:bat[:lng]):bte +pattern aggr.avg(X_0:bat[:bte], X_1:bat[:lng], X_2:bat[:lng]):bte CMDBATavg3comb; Average aggregation combiner. aggr avg -pattern aggr.avg(X_0:bat[:hge], X_1:bat[:lng], X_2:bat[:lng]):hge +pattern aggr.avg(X_0:bat[:hge], X_1:bat[:lng], X_2:bat[:lng]):hge CMDBATavg3comb; Average aggregation combiner. aggr avg -pattern aggr.avg(X_0:bat[:int], X_1:bat[:lng], X_2:bat[:lng]):int +pattern aggr.avg(X_0:bat[:int], X_1:bat[:lng], X_2:bat[:lng]):int CMDBATavg3comb; Average aggregation combiner. aggr avg -pattern aggr.avg(X_0:bat[:lng], X_1:bat[:lng], X_2:bat[:lng]):lng +pattern aggr.avg(X_0:bat[:lng], X_1:bat[:lng], X_2:bat[:lng]):lng CMDBATavg3comb; Average aggregation combiner. aggr avg -pattern aggr.avg(X_0:bat[:sht], X_1:bat[:lng], X_2:bat[:lng]):sht +pattern aggr.avg(X_0:bat[:sht], X_1:bat[:lng], X_2:bat[:lng]):sht CMDBATavg3comb; Average aggregation combiner. aggr avg -pattern aggr.avg(X_0:bat[:any_2]):dbl +pattern aggr.avg(X_0:bat[:any_1]):dbl CMDcalcavg; Gives the avg of all tail values aggr avg -pattern aggr.avg(X_0:bat[:any_2], X_1:int):dbl +pattern aggr.avg(X_0:bat[:any_1], X_1:int):dbl CMDcalcavg; Gives the avg of all tail values aggr cardinality -command aggr.cardinality(X_0:bat[:any_2]):lng +command aggr.cardinality(X_0:bat[:any_2]):lng ALGcard; Return the cardinality of the BAT tail values. aggr corr _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org