Changeset: b03a05e1f3c6 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b03a05e1f3c6
Removed Files:
        buildtools/autogen/setup.py
Modified Files:
        .hgtags
        ChangeLog-Archive
        ChangeLog.Aug2018
        MonetDB.spec
        NT/monetdb_config.h.in
        NT/rules.msc
        clients/ChangeLog
        clients/mapiclient/dump.c
        clients/mapiclient/mclient.c
        clients/mapiclient/mhelp.c
        clients/mapilib/mapi.rc
        clients/odbc/driver/driver.rc
        clients/odbc/winsetup/setup.rc
        configure.ag
        debian/changelog
        gdk/gdk_logger.c
        gdk/gdk_logger.h
        gdk/libbat.rc
        libversions
        monetdb5/tools/libmonetdb5.rc
        sql/storage/bat/bat_logger.c
        sql/storage/bat/bat_storage.c
        sql/storage/sql_storage.h
        sql/storage/store.c
        sql/test/BugTracker-2017/Tests/cleanup_statistics.Bug-6439.stable.out
        
sql/test/BugTracker-2017/Tests/cleanup_statistics.Bug-6439.stable.out.FreeBSD
        
sql/test/BugTracker-2017/Tests/cleanup_statistics.Bug-6439.stable.out.Windows
        vertoo.data
Branch: rename-sql
Log Message:

Merge with default.


diffs (truncated from 606 to 300 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -714,3 +714,6 @@ 3aaf6c916bd870cc478d3973241bc24cafbe1655
 a242d6de1de3dc99a9583d96a61c53044108e576 Aug2018_release
 a2d8e19ac9d6f847dd59c5f12ff48aae815e6b5d Aug2018_9
 a2d8e19ac9d6f847dd59c5f12ff48aae815e6b5d Aug2018_SP1_release
+24d62811fd9372b1ee7525aa1cf2fc8860d20bf7 Aug2018_11
+a2d8e19ac9d6f847dd59c5f12ff48aae815e6b5d Aug2018_SP1_release
+24d62811fd9372b1ee7525aa1cf2fc8860d20bf7 Aug2018_SP1_release
diff --git a/ChangeLog-Archive b/ChangeLog-Archive
--- a/ChangeLog-Archive
+++ b/ChangeLog-Archive
@@ -1,6 +1,9 @@
 # DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY
 # This file contains past ChangeLog entries
 
+* Wed Oct 10 2018 Sjoerd Mullender <sjo...@acm.org> - 11.31.11-20181011
+- Some subtle dependencies between RPMs have been fixed.
+
 * Wed Feb 14 2018 Stefan Manegold <stefan.maneg...@cwi.nl> - 11.29.1-20180315
 - mclient's execution time profiling options and output format have
   been changed. Instead of implicitly via the "--interactive"/"-i"
diff --git a/ChangeLog.Aug2018 b/ChangeLog.Aug2018
--- a/ChangeLog.Aug2018
+++ b/ChangeLog.Aug2018
@@ -1,5 +1,3 @@
 # ChangeLog file for devel
 # This file is updated with Maddlog
 * Wed Oct 10 2018 Sjoerd Mullender <sjo...@acm.org>
-- Some subtle dependencies between RPMs have been fixed.
-
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -1062,6 +1062,14 @@ done
 %postun -p /sbin/ldconfig
 
 %changelog
+* Thu Oct 11 2018 Sjoerd Mullender <sjo...@acm.org> - 11.31.11-20181011
+- Rebuilt.
+- BZ#6648: key property potentially wrong after type conversion
+- BZ#6649: Projection inside within transaction gives wrong results
+
+* Wed Oct 10 2018 Sjoerd Mullender <sjo...@acm.org> - 11.31.11-20181011
+- MonetDB: Some subtle dependencies between RPMs have been fixed.
+
 * Fri Oct 05 2018 Sjoerd Mullender <sjo...@acm.org> - 11.31.9-20181005
 - Rebuilt.
 - BZ#6640: timestamp_to_str returning incorrectly adjusted results
diff --git a/buildtools/autogen/setup.py b/buildtools/autogen/setup.py
deleted file mode 100755
--- a/buildtools/autogen/setup.py
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/env python
-
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0.  If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# Copyright 1997 - July 2008 CWI, August 2008 - 2018 MonetDB B.V.
-
-from distutils.core import setup
-
-setup(name = "autogen",
-      version = "1.0",
-      description = "MonetDB autogen script",
-      author = "MonetDB Team, CWI",
-      author_email = "i...@monetdb.org",
-      url = "https://www.monetdb.org/";,
-      maintainer = "Sjoerd Mullender",
-      maintainer_email = "i...@monetdb.org",
-      license = "Mozilla Public License, v. 2.0",
-      packages = ['autogen'],
-      scripts = ['autogen.py'])
diff --git a/clients/ChangeLog b/clients/ChangeLog
--- a/clients/ChangeLog
+++ b/clients/ChangeLog
@@ -1,3 +1,8 @@
 # ChangeLog file for clients
 # This file is updated with Maddlog
 
+* Thu Oct 11 2018 Martin van Dinther <martin.van.dint...@monetdbsolutions.com>
+- The mclient program can now be quit by typing quit or exit on the
+  command-line.  This makes it easier for novice users to quit the program
+  if they do not know that the standard command to quit is \q.
+
diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c
--- a/clients/mapiclient/dump.c
+++ b/clients/mapiclient/dump.c
@@ -58,22 +58,20 @@ get_with_comments_as_clause(Mapi mid)
                        "WHERE id = language_id"
                     ")";
 
-       MapiHdl hdl;
-       const char *comments_clause;
-
-       hdl = mapi_query(mid, query);
-       if (mapi_error(mid)) {
-               if (hdl) {
+       bool has_sys_comments = false;
+       MapiHdl hdl = mapi_query(mid, query);
+       if (hdl) {
+               if (mapi_error(mid)) {
                        mapi_explain_result(hdl, stderr);
-                       mapi_close_handle(hdl);
-               } else
-                       mapi_explain(mid, stderr);
-               return NULL;
-       }
-       comments_clause = mapi_fetch_row(hdl) ? new_clause : old_clause;
-       mapi_close_handle(hdl);
+               } else {
+                       if (mapi_fetch_row(hdl))
+                               has_sys_comments = true;
+               }
+               mapi_close_handle(hdl);
+       } else
+               mapi_explain(mid, stderr);
 
-       return comments_clause;
+       return has_sys_comments ? new_clause : old_clause;
 }
 
 const char *
@@ -82,6 +80,7 @@ get_comments_clause(Mapi mid)
        static const char *comments_clause = NULL;
        if (comments_clause == NULL) {
                comments_clause = get_with_comments_as_clause(mid);
+               assert(comments_clause != NULL);
        }
        return comments_clause;
 }
@@ -935,9 +934,6 @@ describe_table(Mapi mid, const char *sch
        bool hashge;
        const char *comments_clause = get_comments_clause(mid);
 
-       if (comments_clause == NULL)
-               return 1;
-
        if (schema == NULL) {
                if ((sname = strchr(tname, '.')) != NULL) {
                        size_t len = sname - tname;
@@ -1252,9 +1248,6 @@ describe_sequence(Mapi mid, const char *
        char *sname = NULL;
        const char *comments_clause = get_comments_clause(mid);
 
-       if (comments_clause == NULL)
-               return 1;
-
        if (schema == NULL) {
                if ((sname = strchr(tname, '.')) != NULL) {
                        size_t len = sname - tname;
@@ -1354,9 +1347,6 @@ describe_schema(Mapi mid, const char *sn
        char schemas[5120];
        const char *comments_clause = get_comments_clause(mid);
 
-       if (comments_clause == NULL)
-               return 1;
-
        snprintf(schemas, sizeof(schemas),
                "%s "
                "SELECT s.name, a.name, c.remark "
@@ -1612,10 +1602,8 @@ dump_function(Mapi mid, stream *toConsol
        int flang, ftype;
        const char *comments_clause = get_comments_clause(mid);
 
-       if (comments_clause == NULL)
-               return 1;
-
-       if ((query = malloc(query_size)) == NULL)
+       query = malloc(query_size);
+       if (query == NULL)
                return 1;
 
        query_len = snprintf(query, query_size,
@@ -2162,9 +2150,6 @@ dump_database(Mapi mid, stream *toConsol
        int query_len = 0;
        const char *comments_clause = get_comments_clause(mid);
 
-       if (comments_clause == NULL)
-               return 1;
-
        query = malloc(query_size);
        if (!query)
                goto bailout;
diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c
--- a/clients/mapiclient/mclient.c
+++ b/clients/mapiclient/mclient.c
@@ -2204,9 +2204,9 @@ showCommands(void)
        mnstr_printf(toConsole, "\\f       - format using renderer 
{csv,tab,raw,sql,xml,trash,rowcount,expanded,sam}\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");
+       mnstr_printf(toConsole, "\\L file  - save client-server interaction\n");
        mnstr_printf(toConsole, "\\X       - trace mclient code\n");
-       mnstr_printf(toConsole, "\\q       - terminate session\n");
+       mnstr_printf(toConsole, "\\q       - terminate session and quit 
mclient\n");
 }
 
 #define MD_TABLE    1
@@ -2330,11 +2330,11 @@ doFile(Mapi mid, stream *fp, bool useins
 
        bufsiz = READBLOCK;
        buf = malloc(bufsiz);
-
        if (buf == NULL) {
                fprintf(stderr,"Malloc for doFile failed");
                exit(2);
        }
+
        do {
                bool seen_null_byte = false;
 
@@ -2392,7 +2392,6 @@ doFile(Mapi mid, stream *fp, bool useins
                        /* end of file */
                        if (hdl == NULL) {
                                /* nothing more to do */
-                               free(buf);
                                goto bailout;
                        }
 
@@ -2425,11 +2424,18 @@ doFile(Mapi mid, stream *fp, bool useins
                                        line[5] = prepno < 10 ? ' ' : prepno / 
10 + '0';
                                        line[6] = prepno % 10 + '0';
                                }
+                               if (strcmp(line, "exit\n") == 0) {
+                                       goto bailout;
+                               }
+                               break;
+                       case 'q':
+                               if (strcmp(line, "quit\n") == 0) {
+                                       goto bailout;
+                               }
                                break;
                        case '\\':
                                switch (line[1]) {
                                case 'q':
-                                       free(buf);
                                        goto bailout;
                                case 'X':
                                        /* toggle interaction trace */
@@ -2608,20 +2614,15 @@ doFile(Mapi mid, stream *fp, bool useins
                                                        "    LEFT OUTER JOIN 
comments c ON s.id = c.id\n"
                                                        "  ORDER BY system, 
name, sname, ntype)\n"
                                                        ;
-                                               size_t len = 
strlen(with_clause) + 1500 + strlen(line);
+                                               const char *comments_clause = 
get_comments_clause(mid);
+                                               size_t len = 
strlen(comments_clause) + strlen(with_clause) + 400 + strlen(line);
                                                char *query = malloc(len);
                                                char *q = query, *endq = query 
+ len;
-                                               char *name_column = hasSchema ? 
"fullname" : "name";
-                                               const char *comments_clause = 
get_comments_clause(mid);
 
                                                if (query == NULL) {
                                                        fprintf(stderr, "memory 
allocation failure\n");
                                                        continue;
                                                }
-                                               if (comments_clause == NULL) {
-                                                       free(query);
-                                                       continue;
-                                               }
 
                                                /*
                                                 * | LINE            | SCHEMA 
FILTER | NAME FILTER                   |
@@ -2633,10 +2634,8 @@ doFile(Mapi mid, stream *fp, bool useins
                                                 * | "data.my*"      | no       
     | fullname LIKE 'data.my%'      |
                                                 * | "*a.my*"        | no       
     | fullname LIKE '%a.my%'        |
                                                 */
-                                               q += snprintf(q, endq - q, 
"%s", comments_clause);
-                                               q += snprintf(q, endq - q, 
"%s", with_clause);
-                                               q += snprintf(q, endq - q, " 
SELECT type, fullname, remark FROM describe_all_objects");
-                                               q += snprintf(q, endq - q, " 
WHERE (ntype & %u) > 0", x);
+                                               q += snprintf(q, endq - q, 
"%s%s", comments_clause, with_clause);
+                                               q += snprintf(q, endq - q, " 
SELECT type, fullname, remark FROM describe_all_objects WHERE (ntype & %u) > 
0", x);
                                                if (!wantsSystem) {
                                                        q += snprintf(q, endq - 
q, " AND NOT system");
                                                }
@@ -2644,7 +2643,7 @@ doFile(Mapi mid, stream *fp, bool useins
                                                        q += snprintf(q, endq - 
q, " AND (sname IS NULL OR sname = current_schema)");
                                                }
                                                if (*line) {
-                                                       q += snprintf(q, endq - 
q, " AND (%s LIKE '%s')", name_column, line);
+                                                       q += snprintf(q, endq - 
q, " AND (%s LIKE '%s')", (hasSchema ? "fullname" : "name"), line);
                                                }
                                                q += snprintf(q, endq - q, " 
ORDER BY fullname, type, remark");
 
@@ -2950,6 +2949,7 @@ doFile(Mapi mid, stream *fp, bool useins
        /* reached on end of file */
        assert(hdl == NULL);
   bailout:
+       free(buf);
 #ifdef HAVE_LIBREADLINE
        if (prompt)
                deinit_readline();
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,17 @@
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to