Changeset: 1d55cb92dd25 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1d55cb92dd25 Added Files: sql/test/miscellaneous/Tests/trigger_projection.sql sql/test/miscellaneous/Tests/trigger_projection.stable.err sql/test/miscellaneous/Tests/trigger_projection.stable.out Modified Files: MonetDB.spec buildtools/selinux/monetdb.te clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out clients/mapiclient/mclient.c gdk/ChangeLog.Jun2020 gdk/gdk.h gdk/gdk_calc.c gdk/gdk_cross.c gdk/gdk_heap.c monetdb5/ChangeLog.Jun2020 monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/algebra.h monetdb5/modules/kernel/algebra.mal monetdb5/modules/mal/mkey.c monetdb5/optimizer/opt_mergetable.c sql/backends/monet5/rel_bin.c sql/backends/monet5/sql_statement.c sql/backends/monet5/sql_statement.h sql/benchmarks/tpcds/Tests/alter.timeout sql/include/sql_relation.h sql/server/rel_dump.c sql/server/rel_exp.c sql/server/rel_optimizer.c sql/server/rel_psm.c sql/server/rel_rel.c sql/server/rel_rel.h sql/server/rel_select.c sql/server/rel_unnest.c sql/server/rel_updates.c sql/test/BugDay_2005-12-19_2.9.3/Tests/subselect_cardinality.SF-1240701.1242164.stable.err sql/test/BugTracker-2008/Tests/is_distinct_broken.SF-2430201.stable.err sql/test/BugTracker-2008/Tests/sql_command_kills_db.SF-2233677.stable.err sql/test/BugTracker-2013/Tests/pivot.Bug-3339.stable.err sql/test/BugTracker-2015/Tests/crash.Bug-3736.stable.out sql/test/BugTracker-2017/Tests/exist-bigint-missing.Bug-6315.stable.err sql/test/BugTracker-2017/Tests/lateral.Bug-6310.stable.err sql/test/BugTracker-2017/Tests/side-effect.Bug-6397.stable.out sql/test/BugTracker-2017/Tests/side-effect.Bug-6397.stable.out.single sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err sql/test/BugTracker-2018/Tests/alter-sequence-subquery.Bug-6657.stable.err sql/test/BugTracker/Tests/bug_in_selection.SF-1892413.stable.err sql/test/BugTracker/Tests/insert_values.SF-1578838.stable.err sql/test/analytics/Tests/analytics11.stable.err sql/test/miscellaneous/Tests/All sql/test/subquery/Tests/all.stable.out sql/test/subquery/Tests/any.stable.out sql/test/subquery/Tests/any_all.stable.out sql/test/subquery/Tests/correlated.stable.err sql/test/subquery/Tests/correlated.stable.out sql/test/subquery/Tests/exists.stable.out sql/test/subquery/Tests/scalar.stable.out sql/test/subquery/Tests/subquery.stable.err sql/test/subquery/Tests/subquery.stable.out sql/test/subquery/Tests/subquery2.stable.err sql/test/subquery/Tests/subquery2.stable.out sql/test/subquery/Tests/subquery3.stable.err sql/test/subquery/Tests/subquery3.stable.out sql/test/subquery/Tests/subquery4.stable.err sql/test/subquery/Tests/subquery4.stable.out sql/test/subquery/Tests/subquery5.sql sql/test/subquery/Tests/subquery5.stable.err sql/test/subquery/Tests/subquery5.stable.out Branch: default Log Message:
Merge with Jun2020 branch. diffs (truncated from 4397 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -510,6 +510,9 @@ Suggests: %{name}-client%{?_isa} = %{ver %endif # versions up to 1.0.5 don't accept the queryid field in the result set Conflicts: python-pymonetdb < 1.0.6 +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7 +Requires(pre): systemd +%endif %description -n MonetDB5-server MonetDB is a database management system that is developed from a @@ -522,12 +525,14 @@ package if you want to use the MonetDB d to use the SQL front end, you also need %{name}-SQL-server5. %pre -n MonetDB5-server +%{?sysusers_create_package:echo 'u monetdb - "MonetDB Server" /var/lib/monetdb' | systemd-sysusers --replace=%_sysusersdir/monetdb.conf -} + getent group monetdb >/dev/null || groupadd --system monetdb if getent passwd monetdb >/dev/null; then case $(getent passwd monetdb | cut -d: -f6) in %{_localstatedir}/MonetDB) # old value # change home directory, but not using usermod - # usermod requires there not to be any running processes owned by the user + # usermod requires there to not be any running processes owned by the user EDITOR='sed -i "/^monetdb:/s|:%{_localstatedir}/MonetDB:|:%{_localstatedir}/lib/monetdb:|"' unset VISUAL export EDITOR @@ -542,6 +547,9 @@ exit 0 %files -n MonetDB5-server %defattr(-,root,root) +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7 +%{_sysusersdir}/monetdb.conf +%endif %attr(2750,monetdb,monetdb) %dir %{_localstatedir}/lib/monetdb %attr(2770,monetdb,monetdb) %dir %{_localstatedir}/monetdb5 %attr(2770,monetdb,monetdb) %dir %{_localstatedir}/monetdb5/dbfarm @@ -649,9 +657,7 @@ Recommends: %{name}-SQL-server5-hugeint% Suggests: %{name}-client%{?_isa} = %{version}-%{release} %endif %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7 -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd +%{?systemd_requires} %endif %description SQL-server5 @@ -937,8 +943,11 @@ cd - # move file to correct location %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7 -mkdir -p %{buildroot}%{_tmpfilesdir} +mkdir -p %{buildroot}%{_tmpfilesdir} %{buildroot}%{_sysusersdir} mv %{buildroot}%{_sysconfdir}/tmpfiles.d/monetdbd.conf %{buildroot}%{_tmpfilesdir} +cat > %{buildroot}%{_sysusersdir}/monetdb.conf << EOF +u monetdb - "MonetDB Server" /var/lib/monetdb +EOF rmdir %{buildroot}%{_sysconfdir}/tmpfiles.d %endif diff --git a/buildtools/selinux/monetdb.te b/buildtools/selinux/monetdb.te --- a/buildtools/selinux/monetdb.te +++ b/buildtools/selinux/monetdb.te @@ -18,7 +18,7 @@ require { class fifo_file { getattr read write }; class file { entrypoint execute getattr manage_file_perms map open read }; class netlink_selinux_socket create_socket_perms; - class process { rlimitinh siginh signal sigchld sigterm sigkill transition }; + class process { rlimitinh siginh signal sigchld sigkill transition }; class tcp_socket create_stream_socket_perms; class udp_socket create_stream_socket_perms; class unix_dgram_socket create_socket_perms; @@ -45,7 +45,7 @@ allow mserver5_t mserver5_exec_t:file { type_transition monetdbd_t mserver5_exec_t:process mserver5_t; # monetdbd must be allowed to kill the server it started -allow monetdbd_t mserver5_t:process { sigterm sigkill }; +allow monetdbd_t mserver5_t:process sigkill; # on EPEL 7 we need these as well allow mserver5_t monetdbd_t:process sigchld; allow monetdbd_t unconfined_service_t:process signal; 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 @@ -573,7 +573,7 @@ stdout of test 'MAL-signatures` in direc [ "algebra", "antijoin", "function algebra.antijoin(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]);", "", "" ] [ "algebra", "bandjoin", "command algebra.bandjoin(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], c1:any_1, c2:any_1, li:bit, hi:bit, estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGbandjoin;", "Band join: values in l and r match if r - c1 <[=] l <[=] r + c2" ] [ "algebra", "copy", "command algebra.copy(b:bat[:any_1]):bat[:any_1] ", "ALGcopy;", "Returns physical copy of a BAT." ] -[ "algebra", "crossproduct", "command algebra.crossproduct(left:bat[:any_1], right:bat[:any_2]) (l:bat[:oid], r:bat[:oid]) ", "ALGcrossproduct2;", "Returns 2 columns with all BUNs, consisting of the head-oids\n\t from 'left' and 'right' for which there are BUNs in 'left'\n\t and 'right' with equal tails" ] +[ "algebra", "crossproduct", "command algebra.crossproduct(left:bat[:any_1], right:bat[:any_2], max_one:bit) (l:bat[:oid], r:bat[:oid]) ", "ALGcrossproduct2;", "Returns 2 columns with all BUNs, consisting of the head-oids\n\t from 'left' and 'right' for which there are BUNs in 'left'\n\t and 'right' with equal tails" ] [ "algebra", "difference", "command algebra.difference(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, nil_clears:bit, estimate:lng):bat[:oid] ", "ALGdifference;", "Difference of l and r with candidate lists" ] [ "algebra", "exist", "command algebra.exist(b:bat[:any_1], val:any_1):bit ", "ALGexist;", "Returns whether 'val' occurs in b." ] [ "algebra", "fetch", "command algebra.fetch(b:bat[:any_1], x:oid):any_1 ", "ALGfetchoid;", "Returns the value of the BUN at x-th position with 0 <= x < b.count" ] diff --git a/clients/Tests/MAL-signatures.stable.out.int128 b/clients/Tests/MAL-signatures.stable.out.int128 --- a/clients/Tests/MAL-signatures.stable.out.int128 +++ b/clients/Tests/MAL-signatures.stable.out.int128 @@ -682,7 +682,7 @@ stdout of test 'MAL-signatures` in direc [ "algebra", "antijoin", "function algebra.antijoin(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]);", "", "" ] [ "algebra", "bandjoin", "command algebra.bandjoin(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], c1:any_1, c2:any_1, li:bit, hi:bit, estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGbandjoin;", "Band join: values in l and r match if r - c1 <[=] l <[=] r + c2" ] [ "algebra", "copy", "command algebra.copy(b:bat[:any_1]):bat[:any_1] ", "ALGcopy;", "Returns physical copy of a BAT." ] -[ "algebra", "crossproduct", "command algebra.crossproduct(left:bat[:any_1], right:bat[:any_2]) (l:bat[:oid], r:bat[:oid]) ", "ALGcrossproduct2;", "Returns 2 columns with all BUNs, consisting of the head-oids\n\t from 'left' and 'right' for which there are BUNs in 'left'\n\t and 'right' with equal tails" ] +[ "algebra", "crossproduct", "command algebra.crossproduct(left:bat[:any_1], right:bat[:any_2], max_one:bit) (l:bat[:oid], r:bat[:oid]) ", "ALGcrossproduct2;", "Returns 2 columns with all BUNs, consisting of the head-oids\n\t from 'left' and 'right' for which there are BUNs in 'left'\n\t and 'right' with equal tails" ] [ "algebra", "difference", "command algebra.difference(l:bat[:any_1], r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, nil_clears:bit, estimate:lng):bat[:oid] ", "ALGdifference;", "Difference of l and r with candidate lists" ] [ "algebra", "exist", "command algebra.exist(b:bat[:any_1], val:any_1):bit ", "ALGexist;", "Returns whether 'val' occurs in b." ] [ "algebra", "fetch", "command algebra.fetch(b:bat[:any_1], x:oid):any_1 ", "ALGfetchoid;", "Returns the value of the BUN at x-th position with 0 <= x < b.count" ] diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out --- a/clients/Tests/exports.stable.out +++ b/clients/Tests/exports.stable.out @@ -186,7 +186,7 @@ void BATsetcount(BAT *b, BUN cnt); BAT *BATslice(BAT *b, BUN low, BUN high); gdk_return BATsort(BAT **sorted, BAT **order, BAT **groups, BAT *b, BAT *o, BAT *g, bool reverse, bool nilslast, bool stable) __attribute__((__warn_unused_result__)); gdk_return BATstr_group_concat(ValPtr res, BAT *b, BAT *s, BAT *sep, bool skip_nils, bool abort_on_error, bool nil_if_empty, const char *restrict separator); -gdk_return BATsubcross(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr) __attribute__((__warn_unused_result__)); +gdk_return BATsubcross(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, bool max_one) __attribute__((__warn_unused_result__)); gdk_return BATsum(void *res, int tp, BAT *b, BAT *s, bool skip_nils, bool abort_on_error, bool nil_if_empty); gdk_return BATthetajoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, int op, bool nil_matches, BUN estimate) __attribute__((__warn_unused_result__)); BAT *BATthetaselect(BAT *b, BAT *s, const void *val, const char *op); @@ -803,7 +803,7 @@ str ALGcount_nil(lng *result, const bat str ALGcount_no_nil(lng *result, const bat *bid); str ALGcovariance(dbl *res, const bat *bid1, const bat *bid2); str ALGcovariancep(dbl *res, const bat *bid1, const bat *bid2); -str ALGcrossproduct2(bat *l, bat *r, const bat *lid, const bat *rid); +str ALGcrossproduct2(bat *l, bat *r, const bat *lid, const bat *rid, const bit *max_one); str ALGdifference(bat *r1, const bat *lid, const bat *rid, const bat *slid, const bat *srid, const bit *nil_matches, const bit *not_in, const lng *estimate); str ALGexist(bit *ret, const bat *bid, const void *val); str ALGfetchoid(ptr ret, const bat *bid, const oid *pos); diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c --- a/clients/mapiclient/mclient.c +++ b/clients/mapiclient/mclient.c @@ -915,7 +915,7 @@ EXPANDEDrenderer(MapiHdl hdl) data = nullstring; do { edata = utf8skip(data, ~(size_t)0); - mnstr_printf(toConsole, "%-*s | %.*s\n", fieldw, name, (int) (edata - data), data); + mnstr_printf(toConsole, "%-*s | %.*s\n", fieldw, name, (int) (edata - data), data ? data : ""); name = ""; data = edata; if (*data) diff --git a/gdk/ChangeLog.Jun2020 b/gdk/ChangeLog.Jun2020 --- a/gdk/ChangeLog.Jun2020 +++ b/gdk/ChangeLog.Jun2020 @@ -2,9 +2,9 @@ # This file is updated with Maddlog * Tue Apr 28 2020 Sjoerd Mullender <sjo...@acm.org> -- The functions BATintersect and BATsemijoin have an extra argument, - bool max_one, which indicates that there must be no more than one - match in the join. +- The functions BATintersect BATsemijoin, and BATsubcross have an + extra argument, bool max_one, which indicates that there must be no + more than one match in the join. * Mon Apr 20 2020 Sjoerd Mullender <sjo...@acm.org> - The "unique" property on BATs was removed. The property indicated diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -914,9 +914,9 @@ gdk_export BUN ORDERfndlast(BAT *b, cons gdk_export BUN BUNfnd(BAT *b, const void *right); #define BUNfndVOID(b, v) \ - ((is_oid_nil(*(const oid*)(v)) ^ is_oid_nil((b)->tseqbase)) | \ + (((is_oid_nil(*(const oid*)(v)) ^ is_oid_nil((b)->tseqbase)) | \ (*(const oid*)(v) < (b)->tseqbase) | \ - (*(const oid*)(v) >= (b)->tseqbase + (b)->batCount) ? \ + (*(const oid*)(v) >= (b)->tseqbase + (b)->batCount)) ? \ BUN_NONE : \ (BUN) (*(const oid*)(v) - (b)->tseqbase)) @@ -2047,7 +2047,7 @@ gdk_export BAT *BATselect(BAT *b, BAT *s gdk_export BAT *BATthetaselect(BAT *b, BAT *s, const void *val, const char *op); gdk_export BAT *BATconstant(oid hseq, int tt, const void *val, BUN cnt, role_t role); -gdk_export gdk_return BATsubcross(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr) +gdk_export gdk_return BATsubcross(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, bool max_one) __attribute__((__warn_unused_result__)); gdk_export gdk_return BATleftjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, bool nil_matches, BUN estimate) diff --git a/gdk/gdk_calc.c b/gdk/gdk_calc.c --- a/gdk/gdk_calc.c +++ b/gdk/gdk_calc.c @@ -325,8 +325,8 @@ BATcalcnot(BAT *b, BAT *s, BAT *r) b->batDirtydesc = true; } - TRC_DEBUG(ALGO, "b=" ALGOBATFMT " s=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b=" ALGOBATFMT ",s=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b), ALGOOPTBATPAR(s), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -455,8 +455,8 @@ BATcalcnegate(BAT *b, BAT *s, BAT *r) b->batDirtydesc = true; } - TRC_DEBUG(ALGO, "b=" ALGOBATFMT " s=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b=" ALGOBATFMT ",s=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b), ALGOOPTBATPAR(s), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -595,8 +595,8 @@ BATcalcabsolute(BAT *b, BAT *s, BAT *r) b->batDirtydesc = true; } - TRC_DEBUG(ALGO, "b=" ALGOBATFMT " s=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b=" ALGOBATFMT ",s=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b), ALGOOPTBATPAR(s), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -734,8 +734,8 @@ BATcalciszero(BAT *b, BAT *s, BAT *r) b->batDirtydesc = true; } - TRC_DEBUG(ALGO, "b=" ALGOBATFMT " s=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b=" ALGOBATFMT ",s=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b), ALGOOPTBATPAR(s), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -877,8 +877,8 @@ BATcalcsign(BAT *b, BAT *s, BAT *r) b->batDirtydesc = true; } - TRC_DEBUG(ALGO, "b=" ALGOBATFMT " s=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b=" ALGOBATFMT ",s=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b), ALGOOPTBATPAR(s), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -1046,8 +1046,8 @@ BATcalcisnil_implementation(BAT *b, BAT bn->tnonil = nils == 0; bn->tkey = ncand <= 1; - TRC_DEBUG(ALGO, "b=" ALGOBATFMT " s=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " notnil=%s -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b=" ALGOBATFMT ",s=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT ",notnil=%s -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b), ALGOOPTBATPAR(s), ALGOOPTBATPAR(r), notnil ? "true" : "false", ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -1154,9 +1154,9 @@ BATcalcmin(BAT *b1, BAT *b2, BAT *s1, BA bn->tseqbase = oid_nil; } - TRC_DEBUG(ALGO, "b1=" ALGOBATFMT "b2=" ALGOBATFMT - " s1=" ALGOOPTBATFMT " s2=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b1=" ALGOBATFMT ",b2=" ALGOBATFMT + ",s1=" ALGOOPTBATFMT ",s2=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b1), ALGOBATPAR(b2), ALGOOPTBATPAR(s1), ALGOOPTBATPAR(s2), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -1243,9 +1243,9 @@ BATcalcmin_no_nil(BAT *b1, BAT *b2, BAT bn->tseqbase = oid_nil; } - TRC_DEBUG(ALGO, "b1=" ALGOBATFMT "b2=" ALGOBATFMT - " s1=" ALGOOPTBATFMT " s2=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b1=" ALGOBATFMT ",b2=" ALGOBATFMT + ",s1=" ALGOOPTBATFMT ",s2=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b1), ALGOBATPAR(b2), ALGOOPTBATPAR(s1), ALGOOPTBATPAR(s2), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -1328,8 +1328,8 @@ BATcalcmincst(BAT *b, const ValRecord *v bn->tseqbase = oid_nil; } - TRC_DEBUG(ALGO, "b=" ALGOBATFMT " s=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b=" ALGOBATFMT ",s=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b), ALGOOPTBATPAR(s), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -1430,8 +1430,8 @@ BATcalcmincst_no_nil(BAT *b, const ValRe bn->tseqbase = oid_nil; } - TRC_DEBUG(ALGO, "b=" ALGOBATFMT " s=" ALGOOPTBATFMT - " r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", + TRC_DEBUG(ALGO, "b=" ALGOBATFMT ",s=" ALGOOPTBATFMT + ",r=" ALGOOPTBATFMT " -> " ALGOOPTBATFMT " " LLFMT "usec\n", ALGOBATPAR(b), ALGOOPTBATPAR(s), ALGOOPTBATPAR(r), ALGOOPTBATPAR(bn), GDKusec() - t0); @@ -1519,9 +1519,9 @@ BATcalcmax(BAT *b1, BAT *b2, BAT *s1, BA bn->tseqbase = oid_nil; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list