Changeset: 22a8c45057b3 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/22a8c45057b3 Branch: default Log Message:
Merge with Dec2023 branch. diffs (truncated from 1202 to 300 lines): diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c --- a/gdk/gdk_bbp.c +++ b/gdk/gdk_bbp.c @@ -1666,8 +1666,9 @@ BBPjson_upgrade(json_storage_conversion bat bid; BAT *b; int JSON_type = ATOMindex("json"); - bat *upd = GDKmalloc(sizeof(bat) * ATOMIC_GET(&BBPsize)); - BUN nupd = 0; + bat nbat = (bat) ATOMIC_GET(&BBPsize); + bat *upd = GDKmalloc(sizeof(bat) * (size_t) nbat); + int nupd = 0; if (upd == NULL) { TRC_CRITICAL(GDK, "could not create bat\n"); @@ -1677,7 +1678,7 @@ BBPjson_upgrade(json_storage_conversion BBPlock(); - for (bid = 1; bid < (bat) ATOMIC_GET(&BBPsize); bid++) { + for (bid = 1; bid < nbat; bid++) { if ((b = BBP_desc(bid)) == NULL) { /* not a valid BAT */ continue; diff --git a/sql/backends/monet5/sql_upgrades.c b/sql/backends/monet5/sql_upgrades.c --- a/sql/backends/monet5/sql_upgrades.c +++ b/sql/backends/monet5/sql_upgrades.c @@ -6231,7 +6231,7 @@ sql_update_dec2023(Client c, mvc *sql, s " cast(sys.ifthenelse(c.\"null\", 'YES', 'NO') AS varchar(3)) AS IS_NULLABLE,\n" " cast(sys.\"sql_datatype\"(c.\"type\", c.\"type_digits\", c.\"type_scale\", true, true) AS varchar(1024)) AS DATA_TYPE,\n" " cast(sys.ifthenelse(c.\"type\" IN ('varchar','clob','char','json','url','xml') AND c.\"type_digits\" > 0, c.\"type_digits\", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH,\n" - " cast(sys.ifthenelse(c.\"type\" IN ('varchar','clob','char','json','url','xml') AND c.\"type_digits\" > 0, c.\"type_digits\" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH,\n" + " cast(sys.ifthenelse(c.\"type\" IN ('varchar','clob','char','json','url','xml') AND c.\"type_digits\" > 0, 4 * c.\"type_digits\", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH,\n" " cast(sys.ifthenelse(c.\"type\" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'), c.\"type_digits\", NULL) AS int) AS NUMERIC_PRECISION,\n" " cast(sys.ifthenelse(c.\"type\" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'), 2, sys.ifthenelse(c.\"type\" IN ('decimal','numeric'), 10, NULL)) AS int) AS NUMERIC_PRECISION_RADIX,\n" " cast(sys.ifthenelse(c.\"type\" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'), c.\"type_scale\", NULL) AS int) AS NUMERIC_SCALE,\n" @@ -6360,7 +6360,7 @@ sql_update_dec2023(Client c, mvc *sql, s " cast(NULL AS varchar(1)) AS UDT_NAME,\n" " cast(CASE f.\"type\" WHEN 1 THEN sys.\"sql_datatype\"(a.\"type\", a.\"type_digits\", a.\"type_scale\", true, true) WHEN 2 THEN NULL WHEN 5 THEN 'TABLE' WHEN 7 THEN 'TABLE' ELSE NULL END AS varchar(1024)) AS DATA_TYPE,\n" " cast(sys.ifthenelse(a.\"type\" IN ('varchar','clob','char','json','url','xml') AND a.\"type_digits\" > 0, a.\"type_digits\", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH,\n" - " cast(sys.ifthenelse(a.\"type\" IN ('varchar','clob','char','json','url','xml') AND a.\"type_digits\" > 0, a.\"type_digits\" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH,\n" + " cast(sys.ifthenelse(a.\"type\" IN ('varchar','clob','char','json','url','xml') AND a.\"type_digits\" > 0, 4 * a.\"type_digits\", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH,\n" " cast(NULL AS varchar(1)) AS CHARACTER_SET_CATALOG,\n" " cast(NULL AS varchar(1)) AS CHARACTER_SET_SCHEMA,\n" " 'UTF-8' AS CHARACTER_SET_NAME,\n" @@ -6466,7 +6466,7 @@ sql_update_dec2023(Client c, mvc *sql, s " cast(NULL AS varchar(1)) AS TO_SQL_SPECIFIC_NAME,\n" " cast(sys.\"sql_datatype\"(a.\"type\", a.\"type_digits\", a.\"type_scale\", true, true) AS varchar(1024)) AS DATA_TYPE,\n" " cast(sys.ifthenelse(a.\"type\" IN ('varchar','clob','char','json','url','xml') AND a.\"type_digits\" > 0, a.\"type_digits\", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH,\n" - " cast(sys.ifthenelse(a.\"type\" IN ('varchar','clob','char','json','url','xml') AND a.\"type_digits\" > 0, a.\"type_digits\" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH,\n" + " cast(sys.ifthenelse(a.\"type\" IN ('varchar','clob','char','json','url','xml') AND a.\"type_digits\" > 0, 4 * a.\"type_digits\", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH,\n" " cast(NULL AS varchar(1)) AS CHARACTER_SET_CATALOG,\n" " cast(NULL AS varchar(1)) AS CHARACTER_SET_SCHEMA,\n" " cast(sys.ifthenelse(a.\"type\" IN ('varchar','clob','char','json','url','xml'), 'UTF-8', NULL) AS varchar(16)) AS CHARACTER_SET_NAME,\n" diff --git a/sql/scripts/91_information_schema.sql b/sql/scripts/91_information_schema.sql --- a/sql/scripts/91_information_schema.sql +++ b/sql/scripts/91_information_schema.sql @@ -131,7 +131,7 @@ CREATE VIEW INFORMATION_SCHEMA.COLUMNS A cast(sys.ifthenelse(c."null", 'YES', 'NO') AS varchar(3)) AS IS_NULLABLE, cast(sys."sql_datatype"(c."type", c."type_digits", c."type_scale", true, true) AS varchar(1024)) AS DATA_TYPE, cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, c."type_digits", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH, - cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, c."type_digits" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH, + cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, 4 * c."type_digits", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'), c."type_digits", NULL) AS int) AS NUMERIC_PRECISION, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'), 2, sys.ifthenelse(c."type" IN ('decimal','numeric'), 10, NULL)) AS int) AS NUMERIC_PRECISION_RADIX, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'), c."type_scale", NULL) AS int) AS NUMERIC_SCALE, @@ -277,7 +277,7 @@ CREATE VIEW INFORMATION_SCHEMA.ROUTINES cast(NULL AS varchar(1)) AS UDT_NAME, cast(CASE f."type" WHEN 1 THEN sys."sql_datatype"(a."type", a."type_digits", a."type_scale", true, true) WHEN 2 THEN NULL WHEN 5 THEN 'TABLE' WHEN 7 THEN 'TABLE' ELSE NULL END AS varchar(1024)) AS DATA_TYPE, cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, a."type_digits", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH, - cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, a."type_digits" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH, + cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, 4 * a."type_digits", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH, cast(NULL AS varchar(1)) AS CHARACTER_SET_CATALOG, cast(NULL AS varchar(1)) AS CHARACTER_SET_SCHEMA, 'UTF-8' AS CHARACTER_SET_NAME, @@ -389,7 +389,7 @@ CREATE VIEW INFORMATION_SCHEMA.PARAMETER cast(NULL AS varchar(1)) AS TO_SQL_SPECIFIC_NAME, cast(sys."sql_datatype"(a."type", a."type_digits", a."type_scale", true, true) AS varchar(1024)) AS DATA_TYPE, cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, a."type_digits", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH, - cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, a."type_digits" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH, + cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, 4 * a."type_digits", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH, cast(NULL AS varchar(1)) AS CHARACTER_SET_CATALOG, cast(NULL AS varchar(1)) AS CHARACTER_SET_SCHEMA, cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml'), 'UTF-8', NULL) AS varchar(16)) AS CHARACTER_SET_NAME, diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c --- a/sql/server/rel_select.c +++ b/sql/server/rel_select.c @@ -5255,7 +5255,7 @@ rel_rankop(sql_query *query, sql_rel **r if (frame_type == FRAME_RANGE) ie = obe ? (sql_exp*) obe->t->data : in; else - ie = oe; + ie = obe ? oe : in; } assert(oe && pe); diff --git a/sql/test/BugTracker-2023/Tests/misc-crashes-7390.test b/sql/test/BugTracker-2023/Tests/misc-crashes-7390.test --- a/sql/test/BugTracker-2023/Tests/misc-crashes-7390.test +++ b/sql/test/BugTracker-2023/Tests/misc-crashes-7390.test @@ -182,19 +182,19 @@ statement ok DROP TABLE v0 -- 12.sql --- statement ok --- CREATE TABLE v0 (v1 VARCHAR(255) NULL) +statement ok +CREATE TABLE v0 (v1 VARCHAR(255) NULL) --- statement ok --- INSERT INTO v0 (v1) VALUES (2),(10),(99),(1.100000),(3) +statement ok +INSERT INTO v0 (v1) VALUES (2),(10),(99),(1.100000),(3) --- statement ok --- UPDATE v0 SET v1 = (SELECT MIN(v1) OVER (ROWS 10 PRECEDING) WHERE (10 = v1 OR v1 = ((3 - 10.100000))) AND 3 NOT LIKE v1); +statement error 22018!conversion of string to type bte failed. +UPDATE v0 SET v1 = (SELECT MIN(v1) OVER (ROWS 10 PRECEDING) WHERE (10 = v1 OR v1 = ((3 - 10.100000))) AND 3 NOT LIKE v1); --- statement ok --- DROP TABLE v0 +statement ok +DROP TABLE v0 --- -- 13.sql +-- 13.sql -- statement ok -- CREATE TABLE v0 (v1 SMALLINT) @@ -228,19 +228,19 @@ DROP TABLE v0 -- DROP TABLE v0 -- -- 16.sql --- statement ok --- CREATE TABLE v0(v1 FLOAT) +statement ok +CREATE TABLE v0(v1 FLOAT) --- statement ok --- INSERT INTO v0 VALUES (82),((SELECT 0 FROM v0 AS v2 GROUP BY (SELECT -128))),(15255709.000000),(12) +statement ok +INSERT INTO v0 VALUES (82),((SELECT 0 FROM v0 AS v2 GROUP BY (SELECT -128))),(15255709.000000),(12) --- statement ok --- SELECT v1 = 2147483647 - v1 ^ v1 AS v4 FROM v0 AS v3, v0, v0 AS v6,v0 AS v5, v0 AS v7 ORDER BY 35 >= (SELECT VAR_SAMP(v1 >= 72 ) OVER (ROWS BETWEEN v1 + -128 * -32768 PRECEDING AND CURRENT ROW) IS NOT NULL) ASC +statement error 42000!row frame bound must be non negative and non null. +SELECT v1 = 2147483647 - v1 ^ v1 AS v4 FROM v0 AS v3, v0, v0 AS v6,v0 AS v5, v0 AS v7 ORDER BY 35 >= (SELECT VAR_SAMP(v1 >= 72 ) OVER (ROWS BETWEEN v1 + -128 * -32768 PRECEDING AND CURRENT ROW) IS NOT NULL) ASC --- statement ok --- DROP TABLE v0 +statement ok +DROP TABLE v0 --- -- 17.sql +-- 17.sql -- statement ok -- CREATE TABLE v0(v1 INT) @@ -260,21 +260,21 @@ DROP TABLE v0 -- statement ok -- DROP TABLE v0 --- -- 19.sql --- statement ok --- CREATE TABLE v0(v1 BIGINT) +-- 19.sql +statement ok +CREATE TABLE v0(v1 BIGINT) --- statement ok --- INSERT INTO v0 VALUES (16),(22),(-128),(60),(76),(127),(89) +statement ok +INSERT INTO v0 VALUES (16),(22),(-128),(60),(76),(127),(89) --- statement ok --- WITH v0 AS (SELECT -1, * FROM v0) INSERT INTO v0 SELECT v1 * 255 FROM v0 AS v5, v0, v0 AS v4, v0 AS v3, v0 AS v2 ORDER BY v1 * -128 ^ -1 +statement ok +WITH v0 AS (SELECT -1, * FROM v0) INSERT INTO v0 SELECT v1 * 255 FROM v0 AS v5, v0, v0 AS v4, v0 AS v3, v0 AS v2 ORDER BY v1 * -128 ^ -1 --- statement ok --- UPDATE v0 SET v1 = 59 % v1 WHERE (WITH v0 (v1) AS (SELECT ('x' + 95) ORDER BY - (v1), v1) SELECT STDDEV_POP(v1) OVER (ROWS BETWEEN v1 IS NOT NULL PRECEDING AND 89 FOLLOWING) IS NOT NULL) + 0 % v1 % 46 + 45 * v1 +statement ok +UPDATE v0 SET v1 = 59 % v1 WHERE (WITH v0 (v1) AS (SELECT ('x' + 95) ORDER BY - (v1), v1) SELECT STDDEV_POP(v1) OVER (ROWS BETWEEN v1 IS NOT NULL PRECEDING AND 89 FOLLOWING) IS NOT NULL) + 0 % v1 % 46 + 45 * v1 --- statement ok --- DROP TABLE v0 +statement ok +DROP TABLE v0 -- -- 20.sql -- statement ok @@ -286,21 +286,21 @@ DROP TABLE v0 -- statement ok -- DROP TABLE v0 --- -- 21.sql --- statement ok --- CREATE TABLE v0(v1 BIGINT) +-- 21.sql +statement ok +CREATE TABLE v0(v1 BIGINT) --- statement ok --- INSERT INTO v0 VALUES (13),(53),(-1),(13),(54),((SELECT v1 FROM v0 WHERE v1 IS NULL AND v1 IN (7 ^ v1))),(72),(2147483647) +statement ok +INSERT INTO v0 VALUES (13),(53),(-1),(13),(54),((SELECT v1 FROM v0 WHERE v1 IS NULL AND v1 IN (7 ^ v1))),(72),(2147483647) --- statement ok --- WITH v0 AS (SELECT 2147483647, * FROM v0) INSERT INTO v0 SELECT v1 * -32768 FROM v0 AS v2,v0,v0 AS v5,v0 AS v3,v0 AS v4 ORDER BY v1 * 127 ^ -1 +statement ok +WITH v0 AS (SELECT 2147483647, * FROM v0) INSERT INTO v0 SELECT v1 * -32768 FROM v0 AS v2,v0,v0 AS v5,v0 AS v3,v0 AS v4 ORDER BY v1 * 127 ^ -1 --- statement ok --- UPDATE v0 SET v1 = -128 % v1 WHERE (WITH v0 (v1) AS (SELECT 8 WHERE (v1 < -1 OR v1 > 40) AND 80 ^ 0 % v1 <= 75 = 127 AND v1 IS NOT NULL) SELECT VAR_POP((52 * (v1 IN (127,47)))) OVER (ROWS BETWEEN CURRENT ROW AND v1 - NULL FOLLOWING) * -32768) > v1 +statement error 42000!row frame bound must be non negative and non null. +UPDATE v0 SET v1 = -128 % v1 WHERE (WITH v0 (v1) AS (SELECT 8 WHERE (v1 < -1 OR v1 > 40) AND 80 ^ 0 % v1 <= 75 = 127 AND v1 IS NOT NULL) SELECT VAR_POP((52 * (v1 IN (127,47)))) OVER (ROWS BETWEEN CURRENT ROW AND v1 - NULL FOLLOWING) * -32768) > v1 --- statement ok --- DROP TABLE v0 +statement ok +DROP TABLE v0 -- 22.sql statement ok @@ -348,21 +348,21 @@ DROP TABLE v0 -- statement ok -- DROP TABLE v0 --- -- 26.sql --- statement ok --- CREATE TABLE v0(v1 BIGINT NOT NULL) +-- 26.sql +statement ok +CREATE TABLE v0(v1 BIGINT NOT NULL) --- statement ok --- INSERT INTO v0 VALUES (-1),(127),(4),(-128),(11),(-1),(-128),(-128),(-1) +statement ok +INSERT INTO v0 VALUES (-1),(127),(4),(-128),(11),(-1),(-128),(-128),(-1) --- statement ok --- WITH v0 AS (SELECT -1, * FROM v0) INSERT INTO v0 SELECT v1 * 29 FROM v0 AS v3, v0, v0 AS v2, v0 AS v4, v0 ORDER BY v1 * 0 ^ 83 +statement ok +WITH v0 AS (SELECT -1, * FROM v0) INSERT INTO v0 SELECT v1 * 29 FROM v0 AS v3, v0, v0 AS v2, v0 AS v4, v0 ORDER BY v1 * 0 ^ 83 --- statement ok --- UPDATE v0 SET v1 = -1 WHERE CASE WHEN v1 > -1 THEN (SELECT STDDEV_SAMP((18 * v1 + (v1 IN (21 , -1)))) OVER (ROWS BETWEEN CURRENT ROW AND v1 - NULL FOLLOWING) * 17) > v1 / (SELECT -1 WHERE (88 IN (96))) ELSE 82 END ^ -128 ^ v1 +statement error 42000!row frame bound must be non negative and non null. +UPDATE v0 SET v1 = -1 WHERE CASE WHEN v1 > -1 THEN (SELECT STDDEV_SAMP((18 * v1 + (v1 IN (21 , -1)))) OVER (ROWS BETWEEN CURRENT ROW AND v1 - NULL FOLLOWING) * 17) > v1 / (SELECT -1 WHERE (88 IN (96))) ELSE 82 END ^ -128 ^ v1 --- statement ok --- DROP TABLE v0 +statement ok +DROP TABLE v0 -- -- 27.sql -- statement ok diff --git a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 --- a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 +++ b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 @@ -659,7 +659,7 @@ CREATE VIEW INFORMATION_SCHEMA.COLUMNS A cast(sys.ifthenelse(c."null", 'YES', 'NO') AS varchar(3)) AS IS_NULLABLE, cast(sys."sql_datatype"(c."type", c."type_digits", c."type_scale", true, true) AS varchar(1024)) AS DATA_TYPE, cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, c."type_digits", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH, - cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, c."type_digits" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH, + cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, 4 * c."type_digits", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'), c."type_digits", NULL) AS int) AS NUMERIC_PRECISION, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'), 2, sys.ifthenelse(c."type" IN ('decimal','numeric'), 10, NULL)) AS int) AS NUMERIC_PRECISION_RADIX, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'), c."type_scale", NULL) AS int) AS NUMERIC_SCALE, @@ -783,7 +783,7 @@ CREATE VIEW INFORMATION_SCHEMA.ROUTINES cast(NULL AS varchar(1)) AS UDT_NAME, cast(CASE f."type" WHEN 1 THEN sys."sql_datatype"(a."type", a."type_digits", a."type_scale", true, true) WHEN 2 THEN NULL WHEN 5 THEN 'TABLE' WHEN 7 THEN 'TABLE' ELSE NULL END AS varchar(1024)) AS DATA_TYPE, cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, a."type_digits", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH, - cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, a."type_digits" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH, + cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, 4 * a."type_digits", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH, cast(NULL AS varchar(1)) AS CHARACTER_SET_CATALOG, cast(NULL AS varchar(1)) AS CHARACTER_SET_SCHEMA, 'UTF-8' AS CHARACTER_SET_NAME, @@ -888,7 +888,7 @@ CREATE VIEW INFORMATION_SCHEMA.PARAMETER cast(NULL AS varchar(1)) AS TO_SQL_SPECIFIC_NAME, cast(sys."sql_datatype"(a."type", a."type_digits", a."type_scale", true, true) AS varchar(1024)) AS DATA_TYPE, cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, a."type_digits", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH, - cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, a."type_digits" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH, + cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml') AND a."type_digits" > 0, 4 * a."type_digits", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH, cast(NULL AS varchar(1)) AS CHARACTER_SET_CATALOG, cast(NULL AS varchar(1)) AS CHARACTER_SET_SCHEMA, cast(sys.ifthenelse(a."type" IN ('varchar','clob','char','json','url','xml'), 'UTF-8', NULL) AS varchar(16)) AS CHARACTER_SET_NAME, diff --git a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out --- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out +++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out @@ -659,7 +659,7 @@ CREATE VIEW INFORMATION_SCHEMA.COLUMNS A cast(sys.ifthenelse(c."null", 'YES', 'NO') AS varchar(3)) AS IS_NULLABLE, cast(sys."sql_datatype"(c."type", c."type_digits", c."type_scale", true, true) AS varchar(1024)) AS DATA_TYPE, cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, c."type_digits", NULL) AS int) AS CHARACTER_MAXIMUM_LENGTH, - cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, c."type_digits" * 4, NULL) AS int) AS CHARACTER_OCTET_LENGTH, + cast(sys.ifthenelse(c."type" IN ('varchar','clob','char','json','url','xml') AND c."type_digits" > 0, 4 * c."type_digits", NULL) AS bigint) AS CHARACTER_OCTET_LENGTH, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'), c."type_digits", NULL) AS int) AS NUMERIC_PRECISION, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'), 2, sys.ifthenelse(c."type" IN ('decimal','numeric'), 10, NULL)) AS int) AS NUMERIC_PRECISION_RADIX, cast(sys.ifthenelse(c."type" IN ('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'), c."type_scale", NULL) AS int) AS NUMERIC_SCALE, @@ -783,7 +783,7 @@ CREATE VIEW INFORMATION_SCHEMA.ROUTINES cast(NULL AS varchar(1)) AS UDT_NAME, _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org