Changeset: 861b51fadc8d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/861b51fadc8d
Modified Files:
        clients/odbc/tests/ODBCtester.c
Branch: default
Log Message:

Merge with Mar2025 branch.


diffs (163 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -840,3 +840,4 @@ 30e6380820842b9e0325536eb22d7cb3843ab095
 fd30df6fc710aa7615a995dd826389a67cddd47f Mar2025_root
 11a26808ab1bc96546077899924e5c31d7f2553c Mar2025_1
 ad290be8174693266b1e4eeab06af0266686af38 Mar2025_3
+ad290be8174693266b1e4eeab06af0266686af38 Mar2025_release
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
@@ -2806,15 +2806,14 @@ ODBCFetch(ODBCStmt *stmt,
                ODBCLOG("Writing 16 bytes to %p\n", ptr);
 #endif
                SQLGUID su;
+               unsigned int sudata1; /* DWORD su.Data1 either long or int */
                sscanf(data,
-                      "%8"SCNx32
-                      "-%4"SCNx16
-                      "-%4"SCNx16
-                      "-%2"SCNx8"%2"SCNx8
-                      "-%2"SCNx8"%2"SCNx8"%2"SCNx8"%2"SCNx8"%2"SCNx8"%2"SCNx8,
-                      &su.Data1, &su.Data2, &su.Data3,
+                      "%8x-%4hx-%4hx-%2hhx%2hhx"
+                      "-%2hhx%2hhx%2hhx%2hhx%2hhx%2hhx",
+                      &sudata1, &su.Data2, &su.Data3,
                       &su.Data4[0], &su.Data4[1],
                       &su.Data4[2], &su.Data4[3], &su.Data4[4], &su.Data4[5], 
&su.Data4[6], &su.Data4[7]);
+               su.Data1 = sudata1;
                WriteData(ptr, su, SQLGUID);
                if (lenp)
                        *lenp = sizeof(SQLGUID);
@@ -3348,11 +3347,9 @@ ODBCStore(ODBCStmt *stmt,
                case SQL_C_GUID:
                        u = *(SQLGUID *)ptr;
                        snprintf(data, sizeof(data),
-                                "%08"PRIx32"-%04"PRIx16"-%04"PRIx16
-                                "-%02"PRIx8"%02"PRIx8
-                                "-%02"PRIx8"%02"PRIx8"%02"PRIx8
-                                "%02"PRIx8"%02"PRIx8"%02"PRIx8,
-                                u.Data1, u.Data2, u.Data3,
+                                "%08x-%04x-%04x-%02x%02x"
+                                "-%02x%02x%02x%02x%02x%02x",
+                                (unsigned int) u.Data1, u.Data2, u.Data3,
                                 u.Data4[0], u.Data4[1],
                                 u.Data4[2], u.Data4[3],
                                 u.Data4[4], u.Data4[5],
@@ -3899,12 +3896,9 @@ ODBCStore(ODBCStmt *stmt,
                        u = *(SQLGUID *)ptr;
                        snprintf(data, sizeof(data),
                                 "UUID '"
-                                "%08"PRIx32"-%04"PRIx16"-%04"PRIx16
-                                "-%02"PRIx8"%02"PRIx8
-                                "-%02"PRIx8"%02"PRIx8"%02"PRIx8
-                                "%02"PRIx8"%02"PRIx8"%02"PRIx8
-                                "'",
-                                u.Data1, u.Data2, u.Data3,
+                                "%08x-%04x-%04x-%02x%02x"
+                                "-%02x%02x%02x%02x%02x%02x'",
+                                (unsigned int) u.Data1, u.Data2, u.Data3,
                                 u.Data4[0], u.Data4[1],
                                 u.Data4[2], u.Data4[3],
                                 u.Data4[4], u.Data4[5],
diff --git a/clients/odbc/tests/ODBCtester.c b/clients/odbc/tests/ODBCtester.c
--- a/clients/odbc/tests/ODBCtester.c
+++ b/clients/odbc/tests/ODBCtester.c
@@ -269,7 +269,7 @@ testGetDataGUID(SQLHANDLE stmt)
                        pos += snprintf(outp + pos, outp_len - pos, "NULL\n");
                else
                        pos += snprintf(outp + pos, outp_len - pos, 
"%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x\n",
-                               guid_val.Data1, guid_val.Data2, guid_val.Data3,
+                                       (unsigned int) guid_val.Data1, 
guid_val.Data2, guid_val.Data3,
                                guid_val.Data4[0], guid_val.Data4[1], 
guid_val.Data4[2], guid_val.Data4[3], guid_val.Data4[4], guid_val.Data4[5], 
guid_val.Data4[6], guid_val.Data4[7]);
                check(ret, SQL_HANDLE_STMT, stmt, "SQLGetData(col)");
        }
diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c
--- a/gdk/gdk_bat.c
+++ b/gdk/gdk_bat.c
@@ -1640,7 +1640,7 @@ BUNinplacemulti(BAT *b, const oid *posit
                                        b->tseqbase = * (oid *) t;
                                }
                        }
-               } else if (b->tnosorted >= p)
+               } else if (b->tnosorted == p || b->tnosorted == p + 1)
                        b->tnosorted = 0;
                if (b->trevsorted) {
                        if (prv != BUN_NONE &&
@@ -1652,7 +1652,7 @@ BUNinplacemulti(BAT *b, const oid *posit
                                b->trevsorted = false;
                                b->tnorevsorted = nxt;
                        }
-               } else if (b->tnorevsorted >= p)
+               } else if (b->tnorevsorted == p || b->tnorevsorted == p + 1)
                        b->tnorevsorted = 0;
                if (((b->ttype != TYPE_void) & b->tkey) && b->batCount > 1) {
                        BATkey(b, false);
diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -767,9 +767,11 @@ la_bat_updates(logger *lg, logaction *la
                                        const void *t = BUNtail(vi, p);
 
                                        if (q < cnt) {
-                                               if (b->tnosorted == q)
+                                               if (b->tnosorted == q ||
+                                                   b->tnosorted == q + 1)
                                                        b->tnosorted = 0;
-                                               if (b->tnorevsorted == q)
+                                               if (b->tnorevsorted == q ||
+                                                   b->tnorevsorted == q + 1)
                                                        b->tnorevsorted = 0;
                                                if (b->tnokey[0] == q ||
                                                    b->tnokey[1] == q) {
diff --git a/sql/backends/monet5/vaults/odbc/odbc_loader.c 
b/sql/backends/monet5/vaults/odbc/odbc_loader.c
--- a/sql/backends/monet5/vaults/odbc/odbc_loader.c
+++ b/sql/backends/monet5/vaults/odbc/odbc_loader.c
@@ -355,7 +355,7 @@ getErrMsg(SQLSMALLINT handleType, SQLHAN
                if (retmsg != NULL) {
                        if (state[SQL_SQLSTATE_SIZE] != '\0')
                                state[SQL_SQLSTATE_SIZE] = '\0';
-                       sprintf(retmsg, format, (char *)state, errnr, (char 
*)msg);
+                       sprintf(retmsg, format, (char *)state, (int)errnr, 
(char *)msg);
                        return retmsg;
                }
        }
@@ -942,7 +942,7 @@ odbc_query(int caller, mvc *sql, sql_sub
                        errmsg = "Failed to alloc memory for largest rescol 
string buffer.";
                        goto finish_fetch;
                }
-               TRC_DEBUG(LOADER, "Allocated str_val buffer of size %zu\n", 
(largestStringSize +1) * sizeof(char));
+               TRC_DEBUG(LOADER, "Allocated str_val buffer of size %lu\n", 
(unsigned long) (largestStringSize +1));
 
                if (hasBlobCols) {
                        if (largestBlobSize == 0)       // no valid blob/binary 
data size, assume 1048576 (1MB) as default
@@ -954,7 +954,7 @@ odbc_query(int caller, mvc *sql, sql_sub
                                errmsg = "Failed to alloc memory for largest 
rescol binary data buffer.";
                                goto finish_fetch;
                        }
-                       TRC_DEBUG(LOADER, "Allocated bin_data buffer of size 
%zu\n", largestBlobSize * sizeof(uint8_t));
+                       TRC_DEBUG(LOADER, "Allocated bin_data buffer of size 
%lu\n", (unsigned long) (largestBlobSize * sizeof(uint8_t)));
                }
 
                /* after allocation of var sized buffers, update targetValuePtr 
and bufferLength for those columns */
@@ -1154,8 +1154,8 @@ odbc_query(int caller, mvc *sql, sql_sub
                                                                        date 
mdate_val = date_create(ts_val.year, ts_val.month, ts_val.day);
                                                                        daytime 
daytime_val = daytime_create(ts_val.hour, ts_val.minute, ts_val.second, 
ts_val.fraction);
                                                                        
timestamp timestamp_val = timestamp_create(mdate_val, daytime_val);
-                                                                       
TRC_DEBUG(LOADER, "Data row %lu col %u: timestamp(%04d-%02u-%02u 
%02u:%02u:%02u.%06u)\n", row, col+1,
-                                                                               
        ts_val.year, ts_val.month, ts_val.day, ts_val.hour, ts_val.minute, 
ts_val.second, ts_val.fraction);
+                                                                       
TRC_DEBUG(LOADER, "Data row %lu col %u: timestamp(%04d-%02u-%02u 
%02u:%02u:%02u.%06lu)\n", row, col+1,
+                                                                               
          ts_val.year, ts_val.month, ts_val.day, ts_val.hour, ts_val.minute, 
ts_val.second, (unsigned long) ts_val.fraction);
                                                                        gdkret 
= BUNappend(b, (void *) &timestamp_val, false);
                                                                } else {
                                                                        gdkret 
= BUNappend(b, ATOMnilptr(b->ttype), false);
@@ -1259,7 +1259,7 @@ odbc_query(int caller, mvc *sql, sql_sub
                                                                break;
                                                        case SQL_GUID:
                                                                
TRC_DEBUG(LOADER, "Data row %lu col %u: 
%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x\n", row, col+1,
-                                                                               
guid_val.Data1, guid_val.Data2, guid_val.Data3, guid_val.Data4[0], 
guid_val.Data4[1], guid_val.Data4[2],
+                                                                               
  (unsigned int) guid_val.Data1, guid_val.Data2, guid_val.Data3, 
guid_val.Data4[0], guid_val.Data4[1], guid_val.Data4[2],
                                                                                
guid_val.Data4[3], guid_val.Data4[4], guid_val.Data4[5], guid_val.Data4[6], 
guid_val.Data4[7]);
                                                                if 
(colmetadata[col].battype == TYPE_uuid) {
                                                                        
u_val.u[0] = (guid_val.Data1 >> 24) & 0xFF;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to