Changeset: d6e73d6b9447 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d6e73d6b9447 Removed Files: sql/backends/monet5/LSST/80_lsst.mal sql/backends/monet5/LSST/Makefile.ag sql/backends/monet5/LSST/Tests/All sql/backends/monet5/LSST/Tests/lsst.sql.src sql/backends/monet5/LSST/Tests/lsst.stable.err sql/backends/monet5/LSST/Tests/lsst.stable.out sql/backends/monet5/LSST/Tests/lsst_htmxmatch.reqtests sql/backends/monet5/LSST/Tests/lsst_htmxmatch.sql sql/backends/monet5/LSST/Tests/lsst_htmxmatch.stable.err sql/backends/monet5/LSST/Tests/lsst_htmxmatch.stable.out sql/backends/monet5/LSST/lsst.c sql/backends/monet5/LSST/lsst.h sql/backends/monet5/LSST/lsst.mal sql/backends/monet5/LSST/lsst.sql Modified Files: .hgtags ChangeLog MonetDB.spec buildtools/ChangeLog-Archive buildtools/ChangeLog.Mar2018 clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/mapiclient/Tests/mclient--help.stable.err clients/mapiclient/Tests/mclient--help.stable.err.Windows clients/mapiclient/mclient.c debian/changelog libversions monetdb5/ChangeLog sql/ChangeLog-Archive sql/ChangeLog.Mar2018 sql/backends/monet5/Makefile.ag testing/README Branch: remote_auth Log Message:
Merge with default diffs (truncated from 1643 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -695,3 +695,5 @@ 28edc063ceb6a3726af887911a3e4ac4a33c504f f34a57f73307a09909b3669ce5cfd9aad490f317 Mar2018_3 28edc063ceb6a3726af887911a3e4ac4a33c504f Mar2018_release f34a57f73307a09909b3669ce5cfd9aad490f317 Mar2018_release +ee3d17d6f39930280f5aa914b42b87cda09008ca Mar2018_5 +ee3d17d6f39930280f5aa914b42b87cda09008ca Mar2018_SP1_release diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ # ChangeLog file for devel # This file is updated with Maddlog +* Fri May 25 2018 Ying Zhang <y.zh...@cwi.nl> +- Added a '-f rowcount' option in mclient to repress printing the actual + data of a resultset, but only print the number of returned tuples + * Tue Feb 13 2018 Pedro Ferreira <pedro.ferre...@monetdbsolutions.com> - Added support for lz4 compressed files on stream library diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -132,7 +132,7 @@ Vendor: MonetDB BV <i...@monetdb.org> Group: Applications/Databases License: MPLv2.0 URL: https://www.monetdb.org/ -Source: https://www.monetdb.org/downloads/sources/Mar2018/%{name}-%{version}.tar.bz2 +Source: https://www.monetdb.org/downloads/sources/Mar2018-SP1/%{name}-%{version}.tar.bz2 # we need systemd for the _unitdir macro to exist # we need checkpolicy and selinux-policy-devel for the SELinux policy @@ -1034,6 +1034,59 @@ done %postun -p /sbin/ldconfig %changelog +* Fri May 25 2018 Panagiotis Koutsourakis <kutsu...@monetdbsolutions.com> - 11.29.5-20180525 +- Rebuilt. +- BZ#6562: Sqlitelogictest crash on group by query with not in operator +- BZ#6565: Sqlitelogictest crash on complex select query with coalesce + call +- BZ#6566: Sqlitelogictest unavailable calc.- MAL operations +- BZ#6568: Sqlitelogictest crash on complex case query +- BZ#6569: Sqlitelogictest select query with not between cause with + wrong results +- BZ#6570: Sqlitelogictest select coalesce undefined calc +- BZ#6572: ordered index Error in optimizer garbageCollector +- BZ#6573: Sqlitelogictest crash on complex select query with case + statement +- BZ#6574: server crashed could not find ordered index while creating + a table +- BZ#6575: Sqlitelogictest crash on groupby query with coalesce call +- BZ#6576: Sqlitelogictest aritmetic expressions with negative numbers + handling +- BZ#6577: creating temp table kills performance of the original query +- BZ#6578: One two-tuple insert gives different results than two single + inserts +- BZ#6579: Sqlitelogic test infinite loop while compiling SQL query +- BZ#6581: Join condition errors. +- BZ#6583: Fixed size string concatenation with integer results in fixed + size string of size 0 +- BZ#6584: SELECT FROM REMOTE TABLE WHERE IS NOT NULL produces wrong + result +- BZ#6585: Nested Merge tables cause an infinite loop in rel_optimizer +- BZ#6587: Sqlitelogictest crash on complex case statement +- BZ#6589: Sqlitelogictest crash on complex on complex expression +- BZ#6594: Sqlitelogictest crash on complex case statement +- BZ#6595: Remote decimal division triggers assertion / returns wrong + answer +- BZ#6598: Python 3.4 not supported (due to usage of Py_DecodeLocale) +- BZ#6600: Sqlitelogictest queries fail to execute +- BZ#6601: "where is null" clause on remote table causes problem with + next query +- BZ#6602: Sqlitelogictest wrong results in IN query +- BZ#6603: Sqlitelogictest: Aggregation query with distinct clause + produces duplicated rows +- BZ#6605: Sqlitelogictest set queries with wrong results + +* Thu May 17 2018 Martin van Dinther <martin.van.dint...@monetdbsolutions.com> - 11.29.5-20180525 +- sql: Corrected the definition of view: sys.ids. + +* Tue Apr 3 2018 Sjoerd Mullender <sjo...@acm.org> - 11.29.5-20180525 +- buildtools: On Linux and Unix, try not to link to libraries multiple times: that + only causes the code (and worse, the variables in those libraries) to be + included multiple times. On Windows, we do need to link to libraries + multiple times (once for each DLL we create if the DLL references + anything from the library) but that doesn't cause the linked library + to be loaded multiple times. + * Tue Mar 27 2018 Sjoerd Mullender <sjo...@acm.org> - 11.29.3-20180327 - Rebuilt. - BZ#3824: Created table not visible from ODBC diff --git a/buildtools/ChangeLog-Archive b/buildtools/ChangeLog-Archive --- a/buildtools/ChangeLog-Archive +++ b/buildtools/ChangeLog-Archive @@ -1,6 +1,14 @@ # DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY # This file contains past ChangeLog entries +* Tue Apr 3 2018 Sjoerd Mullender <sjo...@acm.org> - 11.29.5-20180525 +- On Linux and Unix, try not to link to libraries multiple times: that + only causes the code (and worse, the variables in those libraries) to be + included multiple times. On Windows, we do need to link to libraries + multiple times (once for each DLL we create if the DLL references + anything from the library) but that doesn't cause the linked library + to be loaded multiple times. + * Mon Feb 12 2018 Sjoerd Mullender <sjo...@acm.org> - 11.29.1-20180315 - Added the .pdb files needed for debug symbols to the Windows installer for MonetDB/SQL. diff --git a/buildtools/ChangeLog.Mar2018 b/buildtools/ChangeLog.Mar2018 --- a/buildtools/ChangeLog.Mar2018 +++ b/buildtools/ChangeLog.Mar2018 @@ -1,11 +1,3 @@ # ChangeLog file for buildtools # This file is updated with Maddlog -* Tue Apr 3 2018 Sjoerd Mullender <sjo...@acm.org> -- On Linux and Unix, try not to link to libraries multiple times: that - only causes the code (and worse, the variables in those libraries) to be - included multiple times. On Windows, we do need to link to libraries - multiple times (once for each DLL we create if the DLL references - anything from the library) but that doesn't cause the linked library - to be loaded multiple times. - 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 @@ -10342,14 +10342,6 @@ Ready. [ "lidar", "export", "pattern lidar.export(tablename:str, fname:str, type:str):void ", "LIDARexportTable;", "Exporta LIDAR table to a LAS/LAZ file" ] [ "lidar", "load", "pattern lidar.load(tablename:str):void ", "LIDARloadTable;", "Load a LIDAR table from an attached file" ] [ "lidar", "prelude", "command lidar.prelude():void ", "LIDARprelude;", "" ] -[ "lsst", "angsep", "command lsst.angsep(ra1:dbl, dec1:dbl, ra2:dbl, dec2:dbl):dbl ", "qserv_angSep;", "Returns the angular separation in degrees between two spherical\ncoordinate pairs (ra1,dec1) and (ra2,dec2)" ] -[ "lsst", "ptinsphbox", "command lsst.ptinsphbox(ra:dbl, dec:dbl, ra_min:dbl, dec_min:dbl, ra_max:dbl, dec_max:dbl):int ", "qserv_ptInSphBox;", "Returns 1 if the given spherical longitude/latitude box contains the given position" ] -[ "lsst", "ptinsphcircle", "command lsst.ptinsphcircle(ra:dbl, dec:dbl, ra_cen:dbl, dec_cen:dbl, radius:dbl):int ", "qserv_ptInSphCircle;", "Returns 1 if the given spherical longitude/latitude circle contains the given position" ] -[ "lsst", "ptinsphellipse", "command lsst.ptinsphellipse(ra:dbl, dec:dbl, ra_cen:dbl, dec_cen:dbl, smaa:dbl, smia:dbl, ang:dbl):int ", "qserv_ptInSphEllipse;", "Returns 1 if the given spherical longitude/latitude ellipse contains the given position" ] -[ "lsst", "ptinsphpoly", "pattern lsst.ptinsphpoly(ra:dbl, dec:dbl, list:dbl...):int ", "qserv_ptInSphPoly;", "Returns 1 if the given spherical longitude/latitude polyline contains the given position" ] -[ "lsst", "xmatch", "command lsst.xmatch(l:lng, r:lng, depth:int):bit ", "LSSTxmatch;", "Return true when the HtmID pairs that lie within the same triangle at level depth" ] -[ "lsst", "xmatchjoin", "command lsst.xmatchjoin(l:bat[:lng], r:bat[:lng], depth:int, sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng) (lr:bat[:oid], rr:bat[:oid]) ", "LSSTxmatchjoin;", "Return the HtmID pairs that lie within the same triangle at level depth" ] -[ "lsst", "xmatchselect", "command lsst.xmatchselect(l:bat[:lng], cand:bat[:oid], r:lng, depth:int, anti:bit):bat[:oid] ", "LSSTxmatchselect;", "Return the HtmID's that lie within the same triangle as r at level depth" ] [ "mal", "manifold", "pattern mal.manifold(mod:str, fcn:str, a:any...):bat[:any] ", "MANIFOLDevaluate;", "" ] [ "mal", "multiplex", "pattern mal.multiplex(mod:str, fcn:str, a:any...):any... ", "MANIFOLDremapMultiplex;", "" ] [ "manual", "functions", "pattern manual.functions() (mod:bat[:str], fcn:bat[:str], sig:bat[:str], adr:bat[:str], com:bat[:str]) ", "MANUALcreateOverview;", "Produces a table with all MAL functions known" ] 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 @@ -14551,14 +14551,6 @@ Ready. [ "lidar", "export", "pattern lidar.export(tablename:str, fname:str, type:str):void ", "LIDARexportTable;", "Exporta LIDAR table to a LAS/LAZ file" ] [ "lidar", "load", "pattern lidar.load(tablename:str):void ", "LIDARloadTable;", "Load a LIDAR table from an attached file" ] [ "lidar", "prelude", "command lidar.prelude():void ", "LIDARprelude;", "" ] -[ "lsst", "angsep", "command lsst.angsep(ra1:dbl, dec1:dbl, ra2:dbl, dec2:dbl):dbl ", "qserv_angSep;", "Returns the angular separation in degrees between two spherical\ncoordinate pairs (ra1,dec1) and (ra2,dec2)" ] -[ "lsst", "ptinsphbox", "command lsst.ptinsphbox(ra:dbl, dec:dbl, ra_min:dbl, dec_min:dbl, ra_max:dbl, dec_max:dbl):int ", "qserv_ptInSphBox;", "Returns 1 if the given spherical longitude/latitude box contains the given position" ] -[ "lsst", "ptinsphcircle", "command lsst.ptinsphcircle(ra:dbl, dec:dbl, ra_cen:dbl, dec_cen:dbl, radius:dbl):int ", "qserv_ptInSphCircle;", "Returns 1 if the given spherical longitude/latitude circle contains the given position" ] -[ "lsst", "ptinsphellipse", "command lsst.ptinsphellipse(ra:dbl, dec:dbl, ra_cen:dbl, dec_cen:dbl, smaa:dbl, smia:dbl, ang:dbl):int ", "qserv_ptInSphEllipse;", "Returns 1 if the given spherical longitude/latitude ellipse contains the given position" ] -[ "lsst", "ptinsphpoly", "pattern lsst.ptinsphpoly(ra:dbl, dec:dbl, list:dbl...):int ", "qserv_ptInSphPoly;", "Returns 1 if the given spherical longitude/latitude polyline contains the given position" ] -[ "lsst", "xmatch", "command lsst.xmatch(l:lng, r:lng, depth:int):bit ", "LSSTxmatch;", "Return true when the HtmID pairs that lie within the same triangle at level depth" ] -[ "lsst", "xmatchjoin", "command lsst.xmatchjoin(l:bat[:lng], r:bat[:lng], depth:int, sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng) (lr:bat[:oid], rr:bat[:oid]) ", "LSSTxmatchjoin;", "Return the HtmID pairs that lie within the same triangle at level depth" ] -[ "lsst", "xmatchselect", "command lsst.xmatchselect(l:bat[:lng], cand:bat[:oid], r:lng, depth:int, anti:bit):bat[:oid] ", "LSSTxmatchselect;", "Return the HtmID's that lie within the same triangle as r at level depth" ] [ "mal", "manifold", "pattern mal.manifold(mod:str, fcn:str, a:any...):bat[:any] ", "MANIFOLDevaluate;", "" ] [ "mal", "multiplex", "pattern mal.multiplex(mod:str, fcn:str, a:any...):any... ", "MANIFOLDremapMultiplex;", "" ] [ "manual", "functions", "pattern manual.functions() (mod:bat[:str], fcn:bat[:str], sig:bat[:str], adr:bat[:str], com:bat[:str]) ", "MANUALcreateOverview;", "Produces a table with all MAL functions known" ] diff --git a/clients/mapiclient/Tests/mclient--help.stable.err b/clients/mapiclient/Tests/mclient--help.stable.err --- a/clients/mapiclient/Tests/mclient--help.stable.err +++ b/clients/mapiclient/Tests/mclient--help.stable.err @@ -19,7 +19,7 @@ Options are: -d database | --database=database database to connect to (may be URI) -e | --echo echo the query -E charset | --encoding=charset specify encoding (character set) of the terminal - -f kind | --format=kind specify output format {csv,tab,raw,sql,xml,trash} + -f kind | --format=kind specify output format {csv,tab,raw,sql,xml,trash,rowcount} -H | --history load/save cmdline history (default off) -i | --interactive interpret `\' commands on stdin -t | --timer=format use time formatting {none,clock,performance} (none is default) diff --git a/clients/mapiclient/Tests/mclient--help.stable.err.Windows b/clients/mapiclient/Tests/mclient--help.stable.err.Windows --- a/clients/mapiclient/Tests/mclient--help.stable.err.Windows +++ b/clients/mapiclient/Tests/mclient--help.stable.err.Windows @@ -19,7 +19,7 @@ Options are: -d database | --database=database database to connect to (may be URI) -e | --echo echo the query -E charset | --encoding=charset specify encoding (character set) of the terminal - -f kind | --format=kind specify output format {csv,tab,raw,sql,xml,trash} + -f kind | --format=kind specify output format {csv,tab,raw,sql,xml,trash,rowcount} -H | --history load/save cmdline history (default off) -i | --interactive interpret `\' commands on stdin -t | --timer=format use time formatting {none,clock,performance} (none is default) diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c --- a/clients/mapiclient/mclient.c +++ b/clients/mapiclient/mclient.c @@ -89,6 +89,7 @@ enum formatters { XMLformatter, // render as a valid XML document TESTformatter, // for testing, escape characters TRASHformatter, // remove the result set + ROWCOUNTformatter, // only print the number of rows returned SAMformatter, // render a SAM result set EXPANDEDformatter // render as multi-row single record }; @@ -1728,6 +1729,8 @@ setFormatter(const char *s) formatter = TESTformatter; } else if (strcmp(s, "trash") == 0) { formatter = TRASHformatter; + } else if (strcmp(s, "rowcount") == 0) { + formatter = ROWCOUNTformatter; } else if (strcmp(s, "sam") == 0) { formatter = SAMformatter; } else if (strcmp(s, "x") == 0 || strcmp(s, "expanded") == 0) { @@ -1817,6 +1820,7 @@ format_result(Mapi mid, MapiHdl hdl, boo int64_t sqloptimizer = 0; int64_t maloptimizer = 0; int64_t querytime = 0; + int64_t rows = 0; #ifdef HAVE_POPEN stream *saveFD; @@ -1877,14 +1881,16 @@ format_result(Mapi mid, MapiHdl hdl, boo continue; case Q_SCHEMA: SQLqueryEcho(hdl); - if (formatter == TABLEformatter) { + if (formatter == TABLEformatter || + formatter == ROWCOUNTformatter) { mnstr_printf(toConsole, "operation successful\n"); } timerHuman(sqloptimizer, maloptimizer, querytime, singleinstr, false); continue; case Q_TRANS: SQLqueryEcho(hdl); - if (formatter == TABLEformatter) + if (formatter == TABLEformatter || + formatter == ROWCOUNTformatter) mnstr_printf(toConsole, "auto commit mode: %s\n", mapi_get_autocommit(mid) ? "on" : "off"); @@ -1892,7 +1898,8 @@ format_result(Mapi mid, MapiHdl hdl, boo continue; case Q_PREPARE: SQLqueryEcho(hdl); - if (formatter == TABLEformatter) + if (formatter == TABLEformatter || + formatter == ROWCOUNTformatter) mnstr_printf(toConsole, "execute prepared statement " "using: EXEC %d(...)\n", @@ -1902,7 +1909,9 @@ format_result(Mapi mid, MapiHdl hdl, boo case Q_TABLE: break; default: - if (formatter == TABLEformatter && specials != DEBUGmodifier) { + if ((formatter == TABLEformatter || + formatter == ROWCOUNTformatter) && + specials != DEBUGmodifier) { int i; mnstr_printf(stderr_stream, "invalid/unknown response from server, " @@ -1960,6 +1969,11 @@ format_result(Mapi mid, MapiHdl hdl, boo break; } break; + case ROWCOUNTformatter: + rows = mapi_get_row_count(hdl); + mnstr_printf(toConsole, + "%" PRId64 " tuple%s\n", rows, rows != 1 ? "s" : ""); + break; case SAMformatter: SAMrenderer(hdl); break; @@ -2184,7 +2198,7 @@ showCommands(void) } mnstr_printf(toConsole, "\\e - echo the query in sql formatting mode\n"); mnstr_printf(toConsole, "\\t - set the timer {none,clock,performance} (none is default)\n"); - mnstr_printf(toConsole, "\\f - format using a built-in renderer {csv,tab,raw,sql,xml,trash}\n"); + mnstr_printf(toConsole, "\\f - format using a built-in renderer {csv,tab,raw,sql,xml,trash,rowcount}\n"); mnstr_printf(toConsole, "\\w# - set maximal page width (-1=unlimited, 0=terminal width, >0=limit to num)\n"); mnstr_printf(toConsole, "\\r# - set maximum rows per page (-1=raw)\n"); mnstr_printf(toConsole, "\\L file - save client/server interaction\n"); @@ -2826,6 +2840,9 @@ doFile(Mapi mid, stream *fp, bool useins case TRASHformatter: mnstr_printf(toConsole, "trash\n"); break; + case ROWCOUNTformatter: + mnstr_printf(toConsole, "rowcount\n"); + break; case XMLformatter: mnstr_printf(toConsole, "xml\n"); break; @@ -3019,7 +3036,7 @@ usage(const char *prog, int xit) #ifdef HAVE_ICONV fprintf(stderr, " -E charset | --encoding=charset specify encoding (character set) of the terminal\n"); #endif - fprintf(stderr, " -f kind | --format=kind specify output format {csv,tab,raw,sql,xml,trash}\n"); + fprintf(stderr, " -f kind | --format=kind specify output format {csv,tab,raw,sql,xml,trash,rowcount}\n"); fprintf(stderr, " -H | --history load/save cmdline history (default off)\n"); fprintf(stderr, " -i | --interactive interpret `\\' commands on stdin\n"); fprintf(stderr, " -t | --timer=format use time formatting {none,clock,performance} (none is default)\n"); diff --git a/debian/changelog b/debian/changelog --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,65 @@ +monetdb (11.29.5) unstable; urgency=low _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list