Changeset: a5bb5b6f9543 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a5bb5b6f9543 Modified Files: MonetDB.spec NT/monetdb_config.h.in buildtools/ChangeLog.Jan2014 clients/mapiclient/mclient.c configure.ag debian/control gdk/gdk_batop.c gdk/gdk_private.h gdk/gdk_storage.c gdk/gdk_system.h gdk/gdk_utils.c monetdb5/mal/mal_exception.c monetdb5/mal/mal_recycle.c monetdb5/mal/mal_resource.c monetdb5/modules/mal/Tests/inspect05.stable.out monetdb5/modules/mal/manifold.c sql/benchmarks/tpch/Tests/01-explain.stable.out.32bit sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit sql/test/BugTracker-2009/Tests/error_while_drop_func_returns_table_type.SF-2604573.sql sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out.32bit sql/test/BugTracker-2010/Tests/limit_in_prepare.Bug-2552.stable.out.32bit sql/test/Tests/zones.stable.out sql/test/leaks/Tests/check1_gsl.stable.out sql/test/leaks/Tests/check1_nogeom.stable.out sql/test/leaks/Tests/check2_gsl.stable.out sql/test/leaks/Tests/check2_nogeom.stable.out sql/test/leaks/Tests/check3_gsl.stable.out sql/test/leaks/Tests/check3_nogeom.stable.out sql/test/leaks/Tests/check4_gsl.stable.out sql/test/leaks/Tests/check4_nogeom.stable.out sql/test/leaks/Tests/check5_gsl.stable.out sql/test/leaks/Tests/check5_nogeom.stable.out Branch: bamloader Log Message:
Merge with default branch. diffs (truncated from 1799 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -56,7 +56,7 @@ BuildRequires: bzip2-devel # BuildRequires: cfitsio-devel BuildRequires: flex %if %{?with_geos:1}%{!?with_geos:0} -BuildRequires: geos-devel >= 2.2.0 +BuildRequires: geos-devel >= 3.0.0 %endif BuildRequires: gsl-devel BuildRequires: libcurl-devel diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in --- a/NT/monetdb_config.h.in +++ b/NT/monetdb_config.h.in @@ -171,7 +171,7 @@ /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 -#define ftruncate(fd, sz) (_chsize_s((fd), (__int64) (sz)) == 0 ? 0 : -1) +#define ftruncate(fd, sz) (-(_chsize_s((fd), (__int64) (sz)) != 0)) /* Does your compiler support function attributes (__attribute__)? */ /* #undef HAVE_FUNCTION_ATTRIBUTES */ diff --git a/buildtools/ChangeLog.Jan2014 b/buildtools/ChangeLog.Jan2014 --- a/buildtools/ChangeLog.Jan2014 +++ b/buildtools/ChangeLog.Jan2014 @@ -1,3 +1,8 @@ # ChangeLog file for buildtools # This file is updated with Maddlog +* Tue Jun 3 2014 Sjoerd Mullender <sjo...@acm.org> +- Fix configure to continue without Python if the python binary is + too old. This instead of always aborting configure if python happens + to be too old. + diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c --- a/clients/mapiclient/mclient.c +++ b/clients/mapiclient/mclient.c @@ -420,8 +420,7 @@ SQLrow(int *len, int *numeric, char **re if (trim == 1) { for (i = 0; i < fields; i++) { if ((t = rest[i]) != NULL && - utf8strlen(t, NULL) > (size_t) len[i]) - { + utf8strlen(t, NULL) > (size_t) len[i]) { /* eat leading whitespace */ while (*t != 0 && isascii((int) *t) && isspace((int) *t)) t++; @@ -444,9 +443,12 @@ SQLrow(int *len, int *numeric, char **re ulen = utf8strlen(rest[i], NULL); if (first && trim == 2) { - /* calculate the height of this field according to - * the golden ratio, with a correction for a - * terminal screen (1.62 * 2 -> 3 : 9.72~10) */ + /* calculate the height of + * this field according to the + * golden ratio, with a + * correction for a terminal + * screen (1.62 * 2 -> 3 : + * 9.72~10) */ if (ulen > (size_t) len[i]) cutafter[i] = 3 * len[i] / 10; } @@ -477,8 +479,11 @@ SQLrow(int *len, int *numeric, char **re ""); if (!numeric[i]) { - /* replace tabs with a single space to avoid - * screwup the width calculations */ + /* replace tabs with a + * single space to + * avoid screwup the + * width + * calculations */ for (s = rest[i]; *s != *t; s++) if (*s == '\t') *s = ' '; @@ -508,8 +513,8 @@ SQLrow(int *len, int *numeric, char **re croppedfields++; } else { mnstr_printf(toConsole, " %.*s ", - (int) (t - rest[i]), - rest[i]); + (int) (t - rest[i]), + rest[i]); if (!numeric[i]) mnstr_printf(toConsole, "%*s", (int) (len[i] - (ulen - utf8strlen(t, NULL))), @@ -517,8 +522,10 @@ SQLrow(int *len, int *numeric, char **re } rest[i] = *s ? s : 0; if (rest[i] == NULL) { - /* avoid > as border marker if everything - * actually just fits */ + /* avoid > as border + * marker if + * everything actually + * just fits */ cutafter[i] = -1; } if (cutafter[i] == 0) @@ -530,27 +537,31 @@ SQLrow(int *len, int *numeric, char **re first ? '|' : i > 0 && cutafter[i - 1] == 0 ? '>' : ':'); if (numeric[i]) { mnstr_printf(toConsole, "%*s", - (int) (len[i] - ulen), - ""); + (int) (len[i] - ulen), + ""); mnstr_printf(toConsole, " %s ", - rest[i]); + rest[i]); } if (!numeric[i]) { char *p; - /* replace tabs with a single space to avoid - * screwup the width calculations */ + /* replace tabs with a + * single space to + * avoid screwup the + * width + * calculations */ for (p = rest[i]; *p != '\0'; p++) if (*p == '\t') *p = ' '; mnstr_printf(toConsole, " %s ", - rest[i]); + rest[i]); mnstr_printf(toConsole, "%*s", - (int) (len[i] - ulen), - ""); + (int) (len[i] - ulen), + ""); } rest[i] = 0; - /* avoid > as border marker if everything - * actually just fits */ + /* avoid > as border marker if + * everything actually just + * fits */ if (cutafter[i] == 0) cutafter[i] = -1; } @@ -618,13 +629,13 @@ XMLrenderer(MapiHdl hdl) mnstr_flush(toConsole); mnstr_printf(toConsole_raw, "<?xml version='1.0' encoding='UTF-8'?>\n"); mnstr_printf(toConsole_raw, - "<!DOCTYPE table [\n" - " <!ELEMENT table (row)*>\n" /* a table consists of zero or more rows */ - " <!ELEMENT row (column)+>\n" /* a row consists of one or more columns */ - " <!ELEMENT column (#PCDATA)>\n" - " <!ATTLIST table name CDATA #IMPLIED>\n" /* a table may have a name */ - " <!ATTLIST column name CDATA #IMPLIED\n" /* a column may have a name */ - " isnull (true|false) 'false'>]>\n"); + "<!DOCTYPE table [\n" + " <!ELEMENT table (row)*>\n" /* a table consists of zero or more rows */ + " <!ELEMENT row (column)+>\n" /* a row consists of one or more columns */ + " <!ELEMENT column (#PCDATA)>\n" + " <!ATTLIST table name CDATA #IMPLIED>\n" /* a table may have a name */ + " <!ATTLIST column name CDATA #IMPLIED\n" /* a column may have a name */ + " isnull (true|false) 'false'>]>\n"); mnstr_printf(toConsole_raw, "<table"); name = mapi_get_table(hdl, 0); if (name != NULL && *name != 0) @@ -682,7 +693,7 @@ CSVrenderer(MapiHdl hdl) strchr(s, '\n') != NULL || strchr(s, '"') != NULL) { mnstr_printf(toConsole, "%s\"", - i == 0 ? "" : sep); + i == 0 ? "" : sep); while (*s) { switch (*s) { case '\n': @@ -709,7 +720,7 @@ CSVrenderer(MapiHdl hdl) mnstr_write(toConsole, "\"", 1, 1); } else mnstr_printf(toConsole, "%s%s", - i == 0 ? "" : sep, s); + i == 0 ? "" : sep, s); } mnstr_printf(toConsole, "\n"); } @@ -769,20 +780,20 @@ static char * classify(const char *s, size_t l) { /* state is the current state of the state machine: - 0 - initial state, no input seen - 1 - initial sign - 2 - valid integer (with optionally a sign) - 3 - valid integer, followed by a decimal point - 4 - fixed point number of the form [sign] digits period digits - 5 - exponent marker after integer or fixed point number - 6 - sign after exponent marker - 7 - valid floating point number with exponent - 8 - integer followed by single 'L' - 9 - integer followed by 'LL' (lng) - 10 - fixed or floating point number followed by single 'L' - 11 - fixed or floating point number followed by 'LL' (dbl) - 12 - integer followed by '@' - 13 - valid OID (integer followed by '@0') + * 0 - initial state, no input seen + * 1 - initial sign + * 2 - valid integer (with optionally a sign) + * 3 - valid integer, followed by a decimal point + * 4 - fixed point number of the form [sign] digits period digits + * 5 - exponent marker after integer or fixed point number + * 6 - sign after exponent marker + * 7 - valid floating point number with exponent + * 8 - integer followed by single 'L' + * 9 - integer followed by 'LL' (lng) + * 10 - fixed or floating point number followed by single 'L' + * 11 - fixed or floating point number followed by 'LL' (dbl) + * 12 - integer followed by '@' + * 13 - valid OID (integer followed by '@0') */ int state = 0; @@ -972,8 +983,8 @@ TESTrenderer(MapiHdl hdl) default: if ((unsigned char) *s < ' ') mnstr_printf(toConsole, - "\\%03o", - (int) (unsigned char) *s); + "\\%03o", + (int) (unsigned char) *s); else mnstr_write(toConsole, s, 1, 1); break; @@ -1265,9 +1276,8 @@ SQLrenderer(MapiHdl hdl, char singleinst /* do a very pessimistic calculation to determine if more * columns would actually fit on the screen */ if (pagewidth > 0 && - ((((printfields + 1) * 3) - 1) + 2) + /* graphwaste */ - (total - vartotal) + minvartotal > pagewidth) - { + ((((printfields + 1) * 3) - 1) + 2) + /* graphwaste */ + (total - vartotal) + minvartotal > pagewidth) { /* this last column was too much */ total -= len[i]; if (!numeric[i]) @@ -1561,6 +1571,7 @@ format_result(Mapi mid, MapiHdl hdl, cha continue; } + timerHumanStop(); switch (mapi_get_querytype(hdl)) { case Q_BLOCK: case Q_PARSE: @@ -1571,74 +1582,75 @@ format_result(Mapi mid, MapiHdl hdl, cha if (formatter == RAWformatter || formatter == TESTformatter) mnstr_printf(toConsole, "[ " LLFMT "\t]\n", mapi_rows_affected(hdl)); + else if (formatter == TIMERformatter) + printf("%s\n", timerHuman()); else { - timerHumanStop(); aff = mapi_rows_affected(hdl); lid = mapi_get_last_id(hdl); + mnstr_printf(toConsole, + LLFMT " affected row%s", + aff, + aff == 1 ? "s" : ""); if (lid != -1) { mnstr_printf(toConsole, - LLFMT " affected row%s, " - "last generated key: " LLFMT "%s%s%s\n", - aff, - (aff == 1 ? "" : "s"), - lid, - singleinstr ? " (" : "", - singleinstr && formatter != TESTformatter ? timerHuman() : "", - singleinstr ? ")" : ""); - } else { - mnstr_printf(toConsole, - LLFMT " affected row%s%s%s%s\n", - aff, - (aff == 1 ? "" : "s"), - singleinstr ? " (" : "", - singleinstr && formatter != TESTformatter ? timerHuman() : "", - singleinstr ? ")" : ""); + ", last generated key: " + LLFMT, + lid); } + if (singleinstr && formatter != TESTformatter) + mnstr_printf(toConsole, " (%s)", + timerHuman()); + mnstr_printf(toConsole, "\n"); } continue; case Q_SCHEMA: SQLqueryEcho(hdl); - timerHumanStop(); - if (formatter == TABLEformatter) - mnstr_printf(toConsole, - "operation successful%s%s%s\n", - singleinstr ? " (" : "", - singleinstr && formatter != TESTformatter ? timerHuman() : "", _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list