Changeset: 7a071af2c199 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7a071af2c199
Modified Files:
        configure.ag
        gdk/gdk.h
        monetdb5/modules/mal/mkey.c
        monetdb5/modules/mal/mkey.h
        monetdb5/modules/mal/mkey.mal
        monetdb5/optimizer/opt_support.c
        sql/backends/monet5/sql.mx
        sql/backends/monet5/sql_gencode.c
Branch: headless
Log Message:

Merge with default branch.


diffs (truncated from 7645 to 300 lines):

diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c
--- a/clients/mapiclient/dump.c
+++ b/clients/mapiclient/dump.c
@@ -165,18 +165,18 @@
                snprintf(query, maxquerylen,
                         "SELECT \"ps\".\"name\","              /* 0 */
                                "\"pkt\".\"name\","             /* 1 */
-                               "\"pkkc\".\"column\","          /* 2 */
-                               "\"fkkc\".\"column\","          /* 3 */
+                               "\"pkkc\".\"name\","            /* 2 */
+                               "\"fkkc\".\"name\","            /* 3 */
                                "\"fkkc\".\"nr\","              /* 4 */
                                "\"fkk\".\"name\","             /* 5 */
                                "\"fkk\".\"action\","           /* 6 */
                                "\"fs\".\"name\","              /* 7 */
                                "\"fkt\".\"name\" "             /* 8 */
                         "FROM \"sys\".\"_tables\" \"fkt\","
-                             "\"sys\".\"keycolumns\" \"fkkc\","
+                             "\"sys\".\"objects\" \"fkkc\","
                              "\"sys\".\"keys\" \"fkk\","
                              "\"sys\".\"_tables\" \"pkt\","
-                             "\"sys\".\"keycolumns\" \"pkkc\","
+                             "\"sys\".\"objects\" \"pkkc\","
                              "\"sys\".\"keys\" \"pkk\","
                              "\"sys\".\"schemas\" \"ps\","
                              "\"sys\".\"schemas\" \"fs\" "
@@ -197,18 +197,18 @@
                snprintf(query, maxquerylen,
                         "SELECT \"ps\".\"name\","              /* 0 */
                                "\"pkt\".\"name\","             /* 1 */
-                               "\"pkkc\".\"column\","          /* 2 */
-                               "\"fkkc\".\"column\","          /* 3 */
+                               "\"pkkc\".\"name\","            /* 2 */
+                               "\"fkkc\".\"name\","            /* 3 */
                                "\"fkkc\".\"nr\","              /* 4 */
                                "\"fkk\".\"name\","             /* 5 */
                                "\"fkk\".\"action\","           /* 6 */
                                "0,"                            /* 7 */
                                "\"fkt\".\"name\" "             /* 8 */
                         "FROM \"sys\".\"_tables\" \"fkt\","
-                             "\"sys\".\"keycolumns\" \"fkkc\","
+                             "\"sys\".\"objects\" \"fkkc\","
                              "\"sys\".\"keys\" \"fkk\","
                              "\"sys\".\"_tables\" \"pkt\","
-                             "\"sys\".\"keycolumns\" \"pkkc\","
+                             "\"sys\".\"objects\" \"pkkc\","
                              "\"sys\".\"keys\" \"pkk\","
                              "\"sys\".\"schemas\" \"ps\""
                         "WHERE \"fkt\".\"id\" = \"fkk\".\"table_id\" AND "
@@ -223,18 +223,18 @@
        } else {
                query = "SELECT \"ps\".\"name\","               /* 0 */
                               "\"pkt\".\"name\","              /* 1 */
-                              "\"pkkc\".\"column\","           /* 2 */
-                              "\"fkkc\".\"column\","           /* 3 */
+                              "\"pkkc\".\"name\","             /* 2 */
+                              "\"fkkc\".\"name\","             /* 3 */
                               "\"fkkc\".\"nr\","               /* 4 */
                               "\"fkk\".\"name\","              /* 5 */
                               "\"fkk\".\"action\","            /* 6 */
                               "\"fs\".\"name\","               /* 7 */
                               "\"fkt\".\"name\" "              /* 8 */
                        "FROM \"sys\".\"_tables\" \"fkt\","
-                            "\"sys\".\"keycolumns\" \"fkkc\","
+                            "\"sys\".\"objects\" \"fkkc\","
                             "\"sys\".\"keys\" \"fkk\","
                             "\"sys\".\"_tables\" \"pkt\","
-                            "\"sys\".\"keycolumns\" \"pkkc\","
+                            "\"sys\".\"objects\" \"pkkc\","
                             "\"sys\".\"keys\" \"pkk\","
                             "\"sys\".\"schemas\" \"ps\","
                             "\"sys\".\"schemas\" \"fs\" "
@@ -579,11 +579,11 @@
           constraint */
        if (tid)
                snprintf(query, maxquerylen,
-                        "SELECT \"kc\".\"column\","            /* 0 */
+                        "SELECT \"kc\".\"name\","              /* 0 */
                                "\"kc\".\"nr\", "               /* 1 */
                                "\"k\".\"name\", "              /* 2 */
                                "\"k\".\"id\" "                 /* 3 */
-                        "FROM \"sys\".\"keycolumns\" \"kc\", "
+                        "FROM \"sys\".\"objects\" \"kc\", "
                              "\"sys\".\"keys\" \"k\" "
                         "WHERE \"kc\".\"id\" = \"k\".\"id\" AND "
                               "\"k\".\"table_id\" = %s AND "
@@ -591,11 +591,11 @@
                         "ORDER BY \"id\", \"nr\"", tid);
        else
                snprintf(query, maxquerylen,
-                        "SELECT \"kc\".\"column\","            /* 0 */
+                        "SELECT \"kc\".\"name\","              /* 0 */
                                "\"kc\".\"nr\", "               /* 1 */
                                "\"k\".\"name\", "              /* 2 */
                                "\"k\".\"id\" "                 /* 3 */
-                        "FROM \"sys\".\"keycolumns\" \"kc\", "
+                        "FROM \"sys\".\"objects\" \"kc\", "
                              "\"sys\".\"keys\" \"k\", "
                              "\"sys\".\"schemas\" \"s\", "
                              "\"sys\".\"_tables\" \"t\" "
@@ -638,11 +638,11 @@
 
        if (tid)
                snprintf(query, maxquerylen,
-                        "SELECT \"kc\".\"column\","            /* 0 */
+                        "SELECT \"kc\".\"name\","              /* 0 */
                                "\"kc\".\"nr\", "               /* 1 */
                                "\"k\".\"name\", "              /* 2 */
                                "\"k\".\"id\" "                 /* 3 */
-                        "FROM \"sys\".\"keycolumns\" \"kc\", "
+                        "FROM \"sys\".\"objects\" \"kc\", "
                              "\"sys\".\"keys\" \"k\" "
                         "WHERE \"kc\".\"id\" = \"k\".\"id\" AND "
                               "\"k\".\"table_id\" = %s AND "
@@ -650,11 +650,11 @@
                         "ORDER BY \"id\", \"nr\"", tid);
        else
                snprintf(query, maxquerylen,
-                        "SELECT \"kc\".\"column\","            /* 0 */
+                        "SELECT \"kc\".\"name\","              /* 0 */
                                "\"kc\".\"nr\", "               /* 1 */
                                "\"k\".\"name\", "              /* 2 */
                                "\"k\".\"id\" "                 /* 3 */
-                        "FROM \"sys\".\"keycolumns\" \"kc\", "
+                        "FROM \"sys\".\"objects\" \"kc\", "
                              "\"sys\".\"keys\" \"k\", "
                              "\"sys\".\"schemas\" \"s\", "
                              "\"sys\".\"_tables\" \"t\" "
@@ -802,14 +802,14 @@
                        "\"c\".\"name\" "               /* 3 */
                 "FROM \"sys\".\"idxs\" AS \"i\" LEFT JOIN \"sys\".\"keys\" AS 
\"k\" "
                                "ON \"i\".\"name\" = \"k\".\"name\", "
-                     "\"sys\".\"keycolumns\" AS \"kc\", "
+                     "\"sys\".\"objects\" AS \"kc\", "
                      "\"sys\".\"_columns\" AS \"c\", "
                      "\"sys\".\"schemas\" \"s\", "
                      "\"sys\".\"_tables\" AS \"t\" "
                 "WHERE \"i\".\"table_id\" = \"t\".\"id\" AND "
                       "\"i\".\"id\" = \"kc\".\"id\" AND "
                       "\"t\".\"id\" = \"c\".\"table_id\" AND "
-                      "\"kc\".\"column\" = \"c\".\"name\" AND "
+                      "\"kc\".\"name\" = \"c\".\"name\" AND "
                       "(\"k\".\"type\" IS NULL OR \"k\".\"type\" = 1) AND "
                       "\"t\".\"schema_id\" = \"s\".\"id\" AND "
                       "\"s\".\"name\" = '%s' AND "
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
@@ -1323,7 +1323,10 @@
                        }
                        data = (char *) ptr;
 
-                       sz = snprintf(data, buflen, "%04hu-%02hu-%02hu", 
dval.year, dval.month, dval.day);
+                       sz = snprintf(data, buflen, "%04u-%02u-%02u",
+                                     (unsigned int) dval.year,
+                                     (unsigned int) dval.month,
+                                     (unsigned int) dval.day);
                        if (sz < 0 || sz >= buflen) {
                                data[buflen - 1] = 0;
                                /* String data, right-truncated */
@@ -1345,7 +1348,10 @@
                        }
                        data = (char *) ptr;
 
-                       sz = snprintf(data, buflen, "%02hu:%02hu:%02hu", 
tval.hour, tval.minute, tval.second);
+                       sz = snprintf(data, buflen, "%02u:%02u:%02u",
+                                     (unsigned int) tval.hour,
+                                     (unsigned int) tval.minute,
+                                     (unsigned int) tval.second);
                        if (sz < 0 || sz >= buflen) {
                                data[buflen - 1] = 0;
                                /* String data, right-truncated */
@@ -1357,7 +1363,14 @@
                case SQL_TYPE_TIMESTAMP:
                        data = (char *) ptr;
 
-                       sz = snprintf(data, buflen, "%04hu-%02hu-%02hu 
%02hu:%02hu:%02hu", tsval.year, tsval.month, tsval.day, tsval.hour, 
tsval.minute, tsval.second);
+                       sz = snprintf(data, buflen,
+                                     "%04u-%02u-%02u %02u:%02u:%02u",
+                                     (unsigned int) tsval.year,
+                                     (unsigned int) tsval.month,
+                                     (unsigned int) tsval.day,
+                                     (unsigned int) tsval.hour,
+                                     (unsigned int) tsval.minute,
+                                     (unsigned int) tsval.second);
                        if (sz < 0 || sz >= buflen) {
                                /* Numeric value out of range */
                                addStmtError(stmt, "22003", NULL, 0);
@@ -1382,7 +1395,8 @@
                                if (lenp)
                                        *lenp += fscale + 1;
                                if (buflen > 2)
-                                       sz = snprintf(data, buflen, ".%0*u", 
fscale, (unsigned int) tsval.fraction);
+                                       sz = snprintf(data, buflen, ".%0*u",
+                                                     fscale, (unsigned int) 
tsval.fraction);
                                if (buflen <= 2 || sz < 0 || sz >= buflen) {
                                        data[buflen - 1] = 0;
                                        /* String data, right-truncated */
@@ -2687,15 +2701,28 @@
                        break;
                }
                case SQL_C_TYPE_DATE:
-                       snprintf(data, sizeof(data), "%04hd-%02hu-%02hu", 
dval.year, dval.month, dval.day);
+                       snprintf(data, sizeof(data), "%04d-%02u-%02u",
+                                (int) dval.year,
+                                (unsigned int) dval.month,
+                                (unsigned int) dval.day);
                        assigns(buf, bufpos, buflen, data, stmt);
                        break;
                case SQL_C_TYPE_TIME:
-                       snprintf(data, sizeof(data), "%02hu:%02hu:%02hu", 
tval.hour, tval.minute, tval.second);
+                       snprintf(data, sizeof(data), "%02u:%02u:%02u",
+                                (unsigned int) tval.hour,
+                                (unsigned int) tval.minute,
+                                (unsigned int) tval.second);
                        assigns(buf, bufpos, buflen, data, stmt);
                        break;
                case SQL_C_TYPE_TIMESTAMP:
-                       snprintf(data, sizeof(data), "%04hd-%02hu-%02hu 
%02hu:%02hu:%02hu", tsval.year, tsval.month, tsval.day, tsval.hour, 
tsval.minute, tsval.second);
+                       snprintf(data, sizeof(data),
+                                "%04d-%02u-%02u %02u:%02u:%02u",
+                                (int) tsval.year,
+                                (unsigned int) tsval.month,
+                                (unsigned int) tsval.day,
+                                (unsigned int) tsval.hour,
+                                (unsigned int) tsval.minute,
+                                (unsigned int) tsval.second);
                        assigns(buf, bufpos, buflen, data, stmt);
                        if (tsval.fraction) {
                                snprintf(data, sizeof(data), ".%09u", (unsigned 
int) tsval.fraction);
@@ -2826,7 +2853,7 @@
                        }
                        /* fall through */
                case SQL_C_TYPE_DATE:
-                       snprintf(data, sizeof(data), "DATE '%hu-%02hu-%02hu'", 
dval.year, dval.month, dval.day);
+                       snprintf(data, sizeof(data), "DATE '%u-%02u-%02u'", 
dval.year, dval.month, dval.day);
                        assigns(buf, bufpos, buflen, data, stmt);
                        break;
                default:
@@ -2862,7 +2889,10 @@
                        }
                        /* fall through */
                case SQL_C_TYPE_TIME:
-                       snprintf(data, sizeof(data), "TIME '%hu:%02hu:%02hu'", 
tval.hour, tval.minute, tval.second);
+                       snprintf(data, sizeof(data), "TIME '%u:%02u:%02u'",
+                                (unsigned int) tval.hour,
+                                (unsigned int) tval.minute,
+                                (unsigned int) tval.second);
                        assigns(buf, bufpos, buflen, data, stmt);
                        break;
                default:
@@ -2921,7 +2951,14 @@
                        }
                        /* fall through */
                case SQL_C_TYPE_TIMESTAMP:
-                       snprintf(data, sizeof(data), "TIMESTAMP 
'%hu-%02hd-%02hd %02hu:%02hu:%02hu", tsval.year, tsval.month, tsval.day, 
tsval.hour, tsval.minute, tsval.second);
+                       snprintf(data, sizeof(data),
+                                "TIMESTAMP '%u-%02d-%02d %02u:%02u:%02u",
+                                (unsigned int) tsval.year,
+                                (unsigned int) tsval.month,
+                                (unsigned int) tsval.day,
+                                (unsigned int) tsval.hour,
+                                (unsigned int) tsval.minute,
+                                (unsigned int) tsval.second);
                        assigns(buf, bufpos, buflen, data, stmt);
                        if (tsval.fraction) {
                                snprintf(data, sizeof(data), ".%09u", (unsigned 
int) tsval.fraction);
diff --git a/clients/odbc/driver/SQLAllocHandle.c 
b/clients/odbc/driver/SQLAllocHandle.c
--- a/clients/odbc/driver/SQLAllocHandle.c
+++ b/clients/odbc/driver/SQLAllocHandle.c
@@ -55,7 +55,7 @@
        }
        *pnOutputHandle = (SQLHANDLE *) newODBCEnv();
 #ifdef ODBCDEBUG
-       ODBCLOG("new env " PTRFMT "\n", PTRFMTCAST * pnOutputHandle);
+       ODBCLOG("new env " PTRFMT "\n", PTRFMTCAST *pnOutputHandle);
 #endif
        return *pnOutputHandle == NULL ? SQL_ERROR : SQL_SUCCESS;
 }
@@ -76,7 +76,7 @@
        }
        *pnOutputHandle = (SQLHANDLE *) newODBCDbc(env);
 #ifdef ODBCDEBUG
-       ODBCLOG("new dbc " PTRFMT "\n", PTRFMTCAST * pnOutputHandle);
+       ODBCLOG("new dbc " PTRFMT "\n", PTRFMTCAST *pnOutputHandle);
 #endif
        return *pnOutputHandle == NULL ? SQL_ERROR : SQL_SUCCESS;
 }
@@ -97,7 +97,7 @@
        }
        *pnOutputHandle = (SQLHANDLE *) newODBCStmt(dbc);
 #ifdef ODBCDEBUG
-       ODBCLOG("new stmt " PTRFMT "\n", PTRFMTCAST * pnOutputHandle);
+       ODBCLOG("new stmt " PTRFMT "\n", PTRFMTCAST *pnOutputHandle);
 #endif
        return *pnOutputHandle == NULL ? SQL_ERROR : SQL_SUCCESS;
 }
@@ -118,7 +118,7 @@
        }
        *pnOutputHandle = (SQLHANDLE *) newODBCDesc(dbc);
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to