Changeset: 954f5e60cde8 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/954f5e60cde8
Modified Files:
        sql/server/sql_parser.y
Branch: default
Log Message:

Merge with Jun2023


diffs (134 lines):

diff --git a/gdk/CMakeLists.txt b/gdk/CMakeLists.txt
--- a/gdk/CMakeLists.txt
+++ b/gdk/CMakeLists.txt
@@ -20,7 +20,6 @@ set(gdk_public_headers
   $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/gdk_utils.h>
   $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/gdk_cand.h>
   $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/gdk_calc.h>
-  $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/gdk_strimps.h>
   $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/gdk_time.h>
   $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb/gdk.h>
   $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb/gdk_system.h>
@@ -33,7 +32,6 @@ set(gdk_public_headers
   $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb/gdk_utils.h>
   $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb/gdk_calc.h>
   $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb/gdk_cand.h>
-  $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb/gdk_strimps.h>
   $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb/gdk_time.h>)
 
 add_library(bat SHARED)
@@ -91,7 +89,7 @@ target_sources(bat
   gdk_analytic_func.c
   gdk_analytic.h
   gdk_tracer.c gdk_tracer.h
-  gdk_strimps.c
+  gdk_strimps.c gdk_strimps.h
   PUBLIC
   ${gdk_public_headers})
 
diff --git a/gdk/gdk_strimps.c b/gdk/gdk_strimps.c
--- a/gdk/gdk_strimps.c
+++ b/gdk/gdk_strimps.c
@@ -785,7 +785,7 @@ BATsetstrimps(BAT *b)
        }
 
        if (pb->batCount < STRIMP_CREATION_THRESHOLD) {
-               GDKerror("Cannot create strimps index on columns with fewer 
than %ud elements\n", STRIMP_CREATION_THRESHOLD);
+               GDKerror("Cannot create strimps index on columns with fewer 
than " BUNFMT " elements\n", STRIMP_CREATION_THRESHOLD);
                if (pb != b)
                        BBPunfix(pb->batCacheid);
                return GDK_FAIL;
@@ -983,6 +983,8 @@ STRMPdestroy(BAT *b)
                                  BATDIR,
                                  BBP_physical(b->batCacheid),
                                  "tstrimps");
+               } else if (b->tstrimps == (Strimps *)2) {
+                       b->tstrimps = NULL;
                } else if (b->tstrimps != NULL) {
                        STRMPdecref(b->tstrimps, b->tstrimps->strimps.parentid 
== b->batCacheid);
                        b->tstrimps = NULL;
diff --git a/gdk/gdk_strimps.h b/gdk/gdk_strimps.h
--- a/gdk/gdk_strimps.h
+++ b/gdk/gdk_strimps.h
@@ -15,11 +15,11 @@
 
 
 #define STRIMP_VERSION (uint64_t)2
-#define STRIMP_HISTSIZE 256*256
+#define STRIMP_HISTSIZE (256*256)
 #define STRIMP_HEADER_SIZE 64
 #define STRIMP_PAIRS (STRIMP_HEADER_SIZE - 1)
 #define STRIMP_CREATION_THRESHOLD                              \
-       ((ATOMIC_GET(&GDKdebug) & FORCEMITOMASK)? 100 : 5000)
+       ((BUN) ((ATOMIC_GET(&GDKdebug) & FORCEMITOMASK)? 100 : 5000))
 
 typedef struct {
        uint8_t *pbytes;
diff --git a/monetdb5/modules/mal/pcre.c b/monetdb5/modules/mal/pcre.c
--- a/monetdb5/modules/mal/pcre.c
+++ b/monetdb5/modules/mal/pcre.c
@@ -31,8 +31,6 @@
 #include <wchar.h>
 #include <wctype.h>
 
-#include "gdk_strimps.h"
-
 #ifdef HAVE_LIBPCRE
 #include <pcre.h>
 #ifndef PCRE_STUDY_JIT_COMPILE
diff --git a/sql/server/sql_parser.y b/sql/server/sql_parser.y
--- a/sql/server/sql_parser.y
+++ b/sql/server/sql_parser.y
@@ -714,7 +714,7 @@ SQLCODE SQLERROR UNDER WHENEVER
 %token<sval> PUBLIC REFERENCES SCHEMA SET AUTO_COMMIT
 %token RETURN
 
-%token ALTER ADD TABLE COLUMN TO UNIQUE VALUES VIEW WHERE WITH
+%token ALTER ADD TABLE COLUMN TO UNIQUE VALUES VIEW WHERE WITH WITHOUT
 %token<sval> sqlDATE TIME TIMESTAMP INTERVAL
 %token CENTURY DECADE YEAR QUARTER DOW DOY MONTH WEEK DAY HOUR MINUTE SECOND 
EPOCH ZONE
 %token LIMIT OFFSET SAMPLE SEED
@@ -4569,6 +4569,7 @@ opt_sign:
 
 tz:
        WITH TIME ZONE  { $$ = 1; }
+ |     WITHOUT TIME ZONE       { $$ = 0; } /* the default */
  | /* empty */         { $$ = 0; }
  ;
 
@@ -5555,6 +5556,7 @@ non_reserved_word:
 | TIMESTAMP    { $$ = sa_strdup(SA, "timestamp"); }    /* sloppy: officially 
reserved */
 | UESCAPE      { $$ = sa_strdup(SA, "uescape"); }      /* sloppy: officially 
reserved */
 | VALUE                { $$ = sa_strdup(SA, "value"); }        /* sloppy: 
officially reserved */
+| WITHOUT      { $$ = sa_strdup(SA, "without"); }      /* sloppy: officially 
reserved */
 
 | ACTION       { $$ = sa_strdup(SA, "action"); }
 | ANALYZE      { $$ = sa_strdup(SA, "analyze"); }
diff --git a/sql/server/sql_scan.c b/sql/server/sql_scan.c
--- a/sql/server/sql_scan.c
+++ b/sql/server/sql_scan.c
@@ -317,6 +317,7 @@ scanner_init_keywords(void)
        failed += keywords_insert("VIEW", VIEW);
        failed += keywords_insert("WHERE", WHERE);
        failed += keywords_insert("WITH", WITH);
+       failed += keywords_insert("WITHOUT", WITHOUT);
        failed += keywords_insert("DATA", DATA);
 
        failed += keywords_insert("DATE", sqlDATE);
diff --git 
a/sql/test/sys-schema/Tests/webExamplesDateTimeFunctionsOperators.test 
b/sql/test/sys-schema/Tests/webExamplesDateTimeFunctionsOperators.test
--- a/sql/test/sys-schema/Tests/webExamplesDateTimeFunctionsOperators.test
+++ b/sql/test/sys-schema/Tests/webExamplesDateTimeFunctionsOperators.test
@@ -382,11 +382,13 @@ select sys.str_to_timestamp('4/30/2021 0
 ----
 2021-04-30 11:30:49+02:00
 
+skipif system=Windows
 query T
 select sys.time_to_str(timetz '19:30:49', '%l hour %M:%S %p')
 ----
  7 hour 30:49 PM
 
+skipif system=Windows
 query T
 select sys.timestamp_to_str(timestamptz '2021-12-31 18:00:00', '%m/%d/%Y 
%l:%M:%S %p')
 ----
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to