Changeset: 0a56a6d9e643 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0a56a6d9e643 Added Files: sql/test/BugTracker-2017/Tests/corr_coersion.Bug-6287.sql sql/test/BugTracker-2017/Tests/corr_coersion.Bug-6287.stable.err sql/test/BugTracker-2017/Tests/corr_coersion.Bug-6287.stable.out sql/test/BugTracker-2017/Tests/sqlitelogictest-aggregation-distinct.Bug-6411.sql sql/test/BugTracker-2017/Tests/sqlitelogictest-having-with-in.Bug-6410.sql sql/test/BugTracker-2017/Tests/sqlitelogictest-having-with-in.Bug-6410.stable.err sql/test/BugTracker-2017/Tests/sqlitelogictest-having-with-in.Bug-6410.stable.out sql/test/BugTracker-2017/Tests/sqlitelogictest-having-with-not-in.Bug-6409.sql sql/test/BugTracker-2017/Tests/sqlitelogictest-having-with-not-in.Bug-6409.stable.err sql/test/BugTracker-2017/Tests/sqlitelogictest-having-with-not-in.Bug-6409.stable.out Modified Files: buildtools/autogen/autogen/msc.py clients/Tests/exports.stable.out clients/mapiclient/tomograph.c clients/odbc/driver/ODBCConvert.c common/stream/stream_socket.h configure.ag gdk/gdk_aggr.c gdk/gdk_atoms.c gdk/gdk_posix.c gdk/gdk_private.h gdk/gdk_utils.c monetdb5/extras/rapi/Makefile.ag monetdb5/mal/mal.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_instruction.h monetdb5/mal/mal_namespace.c monetdb5/modules/atoms/json.c monetdb5/modules/kernel/mmath.h monetdb5/modules/mal/orderidx.c monetdb5/modules/mal/sysmon.c monetdb5/optimizer/opt_garbageCollector.c monetdb5/optimizer/opt_jit.c monetdb5/optimizer/opt_jit.h monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h monetdb5/optimizer/opt_pushselect.c sql/backends/monet5/UDF/pyapi/emit.c sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql.h sql/backends/monet5/sql_cast.h sql/backends/monet5/sql_cat.c sql/backends/monet5/sql_execute.c sql/backends/monet5/sql_scenario.h sql/backends/monet5/sql_statement.c sql/backends/monet5/sql_statistics.c sql/backends/monet5/sql_upgrades.c sql/backends/monet5/vaults/bam/bam_db_interface.h sql/backends/monet5/vaults/bam/bam_export.h sql/backends/monet5/vaults/bam/bam_loader.h sql/backends/monet5/vaults/fits/fits.c sql/backends/monet5/vaults/netcdf/netcdf.c sql/backends/monet5/vaults/shp/shp.c sql/backends/monet5/wlr.c sql/server/Makefile.ag sql/server/rel_dump.c sql/server/rel_optimizer.c sql/server/rel_rel.c sql/server/rel_select.c sql/storage/bat/bat_storage.c sql/storage/store.c sql/test/BugTracker-2017/Tests/All sql/test/mergetables/Tests/part-elim.stable.out sql/test/remote/Tests/partition_elim.stable.out testing/Mtimeout.c Branch: data-vaults Log Message:
Merge with default diffs (truncated from 3972 to 300 lines): diff --git a/buildtools/autogen/autogen/msc.py b/buildtools/autogen/autogen/msc.py --- a/buildtools/autogen/autogen/msc.py +++ b/buildtools/autogen/autogen/msc.py @@ -98,7 +98,7 @@ def msc_assignment(fd, var, values, msc) o = "" for v in values: o = o + " " + v.replace('/', '\\') - if var[0] != '@': + if var[0] != '@' and '.' not in var: fd.write("%s = %s\n" % (var, o)) def msc_cflags(fd, var, values, msc): 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 @@ -1949,7 +1949,6 @@ str alter_tableRef; str alter_triggerRef; str alter_typeRef; str alter_userRef; -str alter_userRef; str alter_viewRef; str analyzetableRef; str andRef; @@ -2043,7 +2042,6 @@ str create_tableRef; str create_triggerRef; str create_typeRef; str create_userRef; -str create_userRef; str create_viewRef; str crossRef; str dataflowRef; @@ -2079,7 +2077,6 @@ str drop_tableRef; str drop_triggerRef; str drop_typeRef; str drop_userRef; -str drop_userRef; str drop_viewRef; void dumpExceptionsToStream(stream *out, str msg); void dumpModules(stream *out); @@ -2191,7 +2188,6 @@ str identityRef; str ifthenelseRef; str ilikeRef; str ilikeselectRef; -str ilikeselectRef; str ilikethetaselectRef; str ilikeuselectRef; void initHeartbeat(void); @@ -2249,7 +2245,6 @@ str levenshteinbasic2_impl(int *result, str levenshteinbasic_impl(int *result, str *s, str *t); str likeRef; str likeselectRef; -str likeselectRef; str likethetaselectRef; str likeuselectRef; void listModules(stream *out, Module s); @@ -2459,7 +2454,6 @@ str remapRef; str remoteRef; void removeInstruction(MalBlkPtr mb, InstrPtr p); void removeInstructionBlock(MalBlkPtr mb, int pc, int cnt); -void renameVariable(MalBlkPtr mb, int i, str pattern, int newid); str rename_userRef; str replaceRef; str replicatorRef; @@ -2525,7 +2519,6 @@ str sinkRef; void slash_2_dir_sep(str fname); str sliceRef; str sortRef; -str sortRef; str sortReverseRef; str soundex_impl(str *res, str *Name); str sqlRef; diff --git a/clients/mapiclient/tomograph.c b/clients/mapiclient/tomograph.c --- a/clients/mapiclient/tomograph.c +++ b/clients/mapiclient/tomograph.c @@ -953,49 +953,23 @@ showio(void) static void fprintf_time(FILE *f, lng time) { - int TME = TME_DD|TME_HH|TME_MM|TME_SS|TME_MS|TME_US; - int tail = 0; - const char *fmt = NULL; - - if (TME & TME_DD && (tail || time >= US_DD)) { - fmt = LLFMT"%s"; - fprintf(f, fmt, time / US_DD, " d "); - time %= US_DD; - TME &= TME_HH; - tail = 1; - } - if (TME & TME_HH && (tail || time >= US_HH)) { - fmt = tail ? "%02d%s" : "%d%s"; - fprintf(f, fmt, (int) (time / US_HH), " h "); - time %= US_HH; - TME &= TME_MM; - tail = 1; - } - if (TME & TME_MM && (tail || time >= US_MM)) { - fmt = tail ? "%02d%s" : "%d%s"; - fprintf(f, fmt, (int) (time / US_MM), " m "); - time %= US_MM; - TME &= TME_SS; - tail = 1; - } - if (TME & TME_SS && (tail || time >= US_SS)) { - fmt = tail ? "%02d%s" : "%d%s"; - fprintf(f, fmt, (int) (time / US_SS), (TME & TME_MS) ? "." : " s "); - time %= US_SS; - TME &= TME_MS; - tail = 1; - } - if (TME & TME_MS && (tail || time >= US_MS)) { - fmt = tail ? "%03d%s" : "%d%s"; - fprintf(f, fmt, (int) (time / US_MS), (TME & TME_US) ? "." : " s "); - time %= US_MS; - TME &= TME_US; - tail = 1; - } - if (TME & TME_US) { - fmt = tail ? "%03d%s" : "%d%s"; - fprintf(f, fmt, (int) time, tail ? " ms " : " us "); - } + if (time >= US_DD) + fprintf(f, LLFMT " d %02d h ", time / US_DD, + (int) ((time % US_DD) / US_HH)); + else if (time >= US_HH) + fprintf(f, "%d h %02d m ", (int) (time / US_HH), + (int) ((time % US_HH) / US_MM)); + else if (time >= US_MM) + fprintf(f, "%d m %02d s ", (int) (time / US_MM), + (int) ((time % US_MM) / US_SS)); + else if (time >= US_SS) + fprintf(f, "%d.%03d s ", (int) (time / US_SS), + (int) ((time % US_SS) / US_MS)); + else if (time >= US_MS) + fprintf(f, "%d.%03d ms ", (int) (time / US_MS), + (int) ((time % US_MS))); + else + fprintf(f, "%d us ", (int) time); } /* produce a legenda image for the color map */ @@ -1420,7 +1394,7 @@ update(char *line, EventRecord *ev) if (ev->state >= MDB_PING ) { if (cpus == 0 && ev->state == MDB_PING) { char *s; - if( (s= ev->stmt,'[')) + if( (s= strchr(ev->stmt,'[')) != NULL) s++; else s = ev->stmt; while (s && isspace((unsigned char) *s)) diff --git a/clients/odbc/driver/ODBCConvert.c b/clients/odbc/driver/ODBCConvert.c --- a/clients/odbc/driver/ODBCConvert.c +++ b/clients/odbc/driver/ODBCConvert.c @@ -1215,6 +1215,7 @@ ODBCFetch(ODBCStmt *stmt, SQLPOINTER origptr; SQLLEN origbuflen; SQLLEN *origlenp; + SQLLEN sz; if (buflen < 0) { /* Invalid string or buffer length */ @@ -1251,8 +1252,6 @@ ODBCFetch(ODBCStmt *stmt, lenp = NULL; } switch (sql_type) { - SQLLEN sz; - default: case SQL_CHAR: case SQL_VARCHAR: diff --git a/common/stream/stream_socket.h b/common/stream/stream_socket.h --- a/common/stream/stream_socket.h +++ b/common/stream/stream_socket.h @@ -9,6 +9,9 @@ /* This file contains the prototype declarations of the stream * functions that need special include files (sockets) */ +#ifndef _STREAM_SOCKET_H_ +#define _STREAM_SOCKET_H_ + #ifdef HAVE_SYS_SOCKET_H #include <sys/socket.h> #endif @@ -27,3 +30,5 @@ stream_export stream *socket_rstream(SOC stream_export stream *socket_wstream(SOCKET socket, const char *name); stream_export stream *socket_rastream(SOCKET socket, const char *name); stream_export stream *socket_wastream(SOCKET socket, const char *name); + +#endif /* _STREAM_SOCKET_H_ */ diff --git a/configure.ag b/configure.ag --- a/configure.ag +++ b/configure.ag @@ -632,25 +632,15 @@ AS_VAR_IF([enable_strict], [yes], [ MCHECK_ADD_FLAG([-Wlogical-op]) MCHECK_ADD_FLAG([-Wduplicated-cond]) MCHECK_ADD_FLAG([-Wduplicated-branches]) - MCHECK_ADD_FLAG([-Wlogical-op]) MCHECK_ADD_FLAG([-Wrestrict]) -dnl MCHECK_ADD_FLAG([-Wnull-dereference]) - MCHECK_ADD_FLAG([-Wjump-misses-init]) -dnl MCHECK_ADD_FLAG([-Wshadow]) - MCHECK_ADD_FLAG([-Wformat=2]) + MCHECK_ADD_FLAG([-Wnested-externs]) - # With clang 2.8, 3.3, 5.0 (no other tested) and gcc < 4.5 - # (tested 3.4.6, 4.2.1, 4.3.2, 4.4.4, 4.4.5, 4.5.1, 4.5.2), - # "-Wunreachable-code" triggers numerous "will never be - # executed" (at least) in our stream code, mostly (if - # not all) false positives, though, as well as in - # YACC/BISON-generated code; thus, we do not use - # "-Wunreachable-code" with clang and gcc < 4.5 . - # At the same time, Apple deprecated OpenSSL in favour of - # their own CommonCrypto API. We don't mind about that. + # We can deal with -Wunrechable-code on modern + # compilers, but FreeBSD's clang (3.4.1) is too old. + # We need a version that understands the DISABLES + # CODE comment that is in the code at various places. AS_CASE([$CC_ver], - [clang-*|gcc-[[0-3]].*|gcc-4.[[0-4]].*], - [MCHECK_ADD_FLAG([-Wno-deprecated-declarations])], + [clang-3.*], [], [MCHECK_ADD_FLAG([-Wunreachable-code])]) dnl Our code is not (yet?) up to these: @@ -664,7 +654,6 @@ dnl MCHECK_ADD_FLAG([-Wshadow]) dnl MCHECK_ADD_FLAG([-Wfloat-equal]) dnl MCHECK_ADD_FLAG([-Winline]) dnl MCHECK_ADD_FLAG([-Wmissing-noreturn]) - dnl MCHECK_ADD_FLAG([-Wnested-externs]) dnl MCHECK_ADD_FLAG([-Wpadded]) dnl MCHECK_ADD_FLAG([-Wredundant-decls]) dnl MCHECK_ADD_FLAG([-Wshadow]) @@ -680,6 +669,7 @@ dnl MCHECK_ADD_FLAG([-Wshadow]) dnl MCHECK_ADD_FLAG([-Wstrict-overflow=5]) dnl MCHECK_ADD_FLAG([-Wvla]) dnl MCHECK_ADD_FLAG([-Wunsuffixed-float-constants]) + dnl MCHECK_ADD_FLAG([-Wnull-dereference]) ], [-*icc*-linux*|-*ecc*-linux*] ,[ # Intel ([ie]cc/[ie]cpc on Linux) @@ -2718,7 +2708,7 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ # checks for library functions AS_CASE([$host], - [*-darwin1[[0123456]]*], [ + [*-darwin1[[01234567]]*], [ # OSX 10.6 (Snow Leopard) and up somehow makes # configure believe that fdatasync exists, in # reality however, it does not on this platform. diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c --- a/gdk/gdk_aggr.c +++ b/gdk/gdk_aggr.c @@ -1355,7 +1355,7 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT BUN *restrict rems = NULL; lng *restrict cnts = NULL; dbl *restrict dbls; - BAT *bn = NULL; + BAT *bn = NULL, *cn = NULL; BUN start, end; const oid *cand = NULL, *candend = NULL; const char *err; @@ -1384,11 +1384,12 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT } if (cntsp) { lng zero = 0; - if ((*cntsp = BATconstant(ngrp == 0 ? 0 : min, TYPE_lng, &zero, ngrp, TRANSIENT)) == NULL) { + if ((cn = BATconstant(ngrp == 0 ? 0 : min, TYPE_lng, &zero, ngrp, TRANSIENT)) == NULL) { GDKerror("BATgroupavg: failed to create BAT\n"); BBPreclaim(bn); return GDK_FAIL; } + *cntsp = cn; } *bnp = bn; return GDK_SUCCEED; @@ -1404,10 +1405,11 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT return GDK_FAIL; if (cntsp) { lng one = 1; - if ((*cntsp = BATconstant(ngrp == 0 ? 0 : min, TYPE_lng, &one, ngrp, TRANSIENT)) == NULL) { + if ((cn = BATconstant(ngrp == 0 ? 0 : min, TYPE_lng, &one, ngrp, TRANSIENT)) == NULL) { BBPreclaim(bn); return GDK_FAIL; } + *cntsp = cn; } *bnp = bn; return GDK_SUCCEED; @@ -1430,9 +1432,9 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT break; } if (cntsp) { - if ((*cntsp = COLnew(min, TYPE_lng, ngrp, TRANSIENT)) == NULL) + if ((cn = COLnew(min, TYPE_lng, ngrp, TRANSIENT)) == NULL) goto alloc_fail; - cnts = (lng *) Tloc(*cntsp, 0); + cnts = (lng *) Tloc(cn, 0); memset(cnts, 0, ngrp * sizeof(lng)); } else { cnts = GDKzalloc(ngrp * sizeof(lng)); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list