MonetDB: default - Merge with Dec2023 branch.

2024-02-02 Thread Sjoerd Mullender via checkin-list
Changeset: c8828137676c for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/c8828137676c
Modified Files:
gdk/gdk_batop.c
gdk/gdk_calc_convert.c
monetdb5/modules/kernel/algebra.c
Branch: default
Log Message:

Merge with Dec2023 branch.


diffs (truncated from 893 to 300 lines):

diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -1828,16 +1828,13 @@ BATslice(BAT *b, BUN l, BUN h)
 
BATcheck(b, NULL);
BATiter bi = bat_iterator(b);
+   if (l > bi.count)
+   l = bi.count;
if (h > bi.count)
h = bi.count;
if (h < l)
h = l;
 
-   if (l > BUN_MAX || h > BUN_MAX) {
-   GDKerror("boundary out of range\n");
-   goto doreturn;
-   }
-
if (complex_cand(b)) {
/* slicing a candidate list with exceptions */
struct canditer ci;
diff --git a/gdk/gdk_calc_convert.c b/gdk/gdk_calc_convert.c
--- a/gdk/gdk_calc_convert.c
+++ b/gdk/gdk_calc_convert.c
@@ -994,8 +994,8 @@ convert_typeswitchloop(const void *src, 
   oid candoff, bool *reduce,
   uint8_t scale1, uint8_t scale2, uint8_t precision)
 {
-   assert(scale1 < (uint8_t) (sizeof(scales) / sizeof(scales[0])));
-   assert(scale2 < (uint8_t) (sizeof(scales) / sizeof(scales[0])));
+   assert(stp == TYPE_flt || stp == TYPE_dbl || scale1 < (uint8_t) 
(sizeof(scales) / sizeof(scales[0])));
+   assert(dtp == TYPE_flt || dtp == TYPE_dbl || scale2 < (uint8_t) 
(sizeof(scales) / sizeof(scales[0])));
switch (ATOMbasetype(stp)) {
case TYPE_msk:
switch (ATOMbasetype(dtp)) {
diff --git a/gdk/gdk_heap.c b/gdk/gdk_heap.c
--- a/gdk/gdk_heap.c
+++ b/gdk/gdk_heap.c
@@ -75,9 +75,6 @@ HEAPcreatefile(int farmid, size_t *maxsz
return base;
 }
 
-static gdk_return HEAPload_intern(Heap *h, const char *nme, const char *ext, 
const char *suffix, bool trunc);
-static gdk_return HEAPsave_intern(Heap *h, const char *nme, const char *ext, 
const char *suffix, bool dosync, BUN free, MT_Lock *lock);
-
 static char *
 decompose_filename(str nme)
 {
diff --git a/monetdb5/modules/kernel/algebra.c 
b/monetdb5/modules/kernel/algebra.c
--- a/monetdb5/modules/kernel/algebra.c
+++ b/monetdb5/modules/kernel/algebra.c
@@ -120,10 +120,6 @@ slice(BAT **retval, BAT *b, lng start, l
}
if (is_lng_nil(end))
end = BATcount(b);
-   if (start > (lng) BUN_MAX || end >= (lng) BUN_MAX) {
-   GDKerror("argument out of range\n");
-   return GDK_FAIL;
-   }
 
return (*retval = BATslice(b, (BUN) start, (BUN) end + 1)) ? 
GDK_SUCCEED : GDK_FAIL;
 }
@@ -971,8 +967,10 @@ ALGfirstn(Client cntxt, MalBlkPtr mb, Ma
assert(pci->argc - pci->retc >= 5 && pci->argc - pci->retc <= 7);
 
n = *getArgReference_lng(stk, pci, pci->argc - 4);
-   if (n < 0 || (lng) n >= (lng) BUN_MAX)
+   if (n < 0)
throw(MAL, "algebra.firstn", ILLEGAL_ARGUMENT);
+   if (n > (lng) BUN_MAX)
+   n = BUN_MAX;
ret1 = getArgReference_bat(stk, pci, 0);
if (pci->retc == 2)
ret2 = getArgReference_bat(stk, pci, 1);
@@ -1433,8 +1431,7 @@ ALGsubslice_lng(bat *ret, const bat *bid
BAT *b, *bn;
BUN s, e;
 
-   if (*start < 0 || *start > (lng) BUN_MAX ||
-   (*end < 0 && !is_lng_nil(*end)) || *end >= (lng) BUN_MAX)
+   if (*start < 0 || (*end < 0 && !is_lng_nil(*end)))
throw(MAL, "algebra.subslice", ILLEGAL_ARGUMENT);
if ((b = BBPquickdesc(*bid)) == NULL)
throw(MAL, "algebra.subslice", SQLSTATE(HY002) 
RUNTIME_OBJECT_MISSING);
diff --git a/sql/benchmarks/tpcds/Tests/All b/sql/benchmarks/tpcds/Tests/All
--- a/sql/benchmarks/tpcds/Tests/All
+++ b/sql/benchmarks/tpcds/Tests/All
@@ -1,1 +1,1 @@
-HAVE_DATA_PATH&!ARCH_BITS32?one
+HAVE_DATA_PATH?one
diff --git a/sql/benchmarks/tpcds/Tests/one.test.in 
b/sql/benchmarks/tpcds/Tests/one.test.in
--- a/sql/benchmarks/tpcds/Tests/one.test.in
+++ b/sql/benchmarks/tpcds/Tests/one.test.in
@@ -5973,6 +5973,7 @@ limit 100
 
 600 values hashing to f1cce2608f5e93697e23da9b25217519
 
+skipif bits=32bit
 query IT rowsort
 -- query 51a
 WITH web_tv as (
diff --git a/sql/server/rel_statistics.h b/sql/server/rel_statistics.h
--- a/sql/server/rel_statistics.h
+++ b/sql/server/rel_statistics.h
@@ -70,6 +70,9 @@ statistics_atom_min(mvc *sql, atom *v1, 
 static inline void
 set_minmax_property(mvc *sql, sql_exp *e, rel_prop kind, atom *val)
 {
+   if (val == NULL)
+   return;
+
sql_subtype *tpe = exp_subtype(e);
prop *found = find_prop(e->p, kind);
 
diff --git a/sql/test/BugTracker-2010/Tests/All 
b/sql/test/BugTracker-2010/Tests/All
--- a/sql/test/BugTracker-2010/Tests/All
+++ b/sql/test/BugTracker-2010/Tests/All
@@ -3,7 +3,6 @@ slow-query.Bug-2671
 corrupted_values_after_upd

MonetDB: Dec2023 - Fix dump output.

2024-02-02 Thread Sjoerd Mullender via checkin-list
Changeset: f2b43d45f4fd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/f2b43d45f4fd
Modified Files:
sql/test/testdb/Tests/dump.stable.out
Branch: Dec2023
Log Message:

Fix dump output.


diffs (12 lines):

diff --git a/sql/test/testdb/Tests/dump.stable.out 
b/sql/test/testdb/Tests/dump.stable.out
--- a/sql/test/testdb/Tests/dump.stable.out
+++ b/sql/test/testdb/Tests/dump.stable.out
@@ -101347,7 +101347,7 @@ CREATE TABLE "testschema"."geomtest" (
"m"   MBR
 );
 COPY 2 RECORDS INTO "testschema"."geomtest" FROM stdin USING DELIMITERS 
E'\t',E'\n','"';
-POINT (10.5 12.3)  LINESTRING (10 10, 20 20, 30 40)LINESTRING (10 
10, 20 20, 30 40)POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   
POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   MULTIPOINT (20 80, 110 160, 20 
160) MULTILINESTRING ((0 0, 0 80, 60 80, 60 0, 0 0)) MULTILINESTRING ((0 0, 
0 80, 60 80, 60 0, 0 0)) MULTIPOLYGON (((140 110, 260 110, 170 20, 50 20, 140 
110)), ((300 270, 420 270, 340 190, 220 190, 300 270)))MULTIPOLYGON (((140 
110, 260 110, 170 20, 50 20, 140 110)), ((300 270, 420 270, 340 190, 220 190, 
300 270)))POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   
GEOMETRYCOLLECTION (POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0)), LINESTRING (10 
10, 20 20, 30 40))  BOX (10.00 10.00, 20.00 20.00)
+POINT (10.5 12.3)  LINESTRING (10 10, 20 20, 30 40)LINESTRING (10 
10, 20 20, 30 40)POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   
POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   MULTIPOINT ((20 80), (110 160), 
(20 160))   MULTILINESTRING ((0 0, 0 80, 60 80, 60 0, 0 0)) MULTILINESTRING 
((0 0, 0 80, 60 80, 60 0, 0 0)) MULTIPOLYGON (((140 110, 260 110, 170 20, 50 
20, 140 110)), ((300 270, 420 270, 340 190, 220 190, 300 270)))MULTIPOLYGON 
(((140 110, 260 110, 170 20, 50 20, 140 110)), ((300 270, 420 270, 340 190, 220 
190, 300 270)))POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   
GEOMETRYCOLLECTION (POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0)), LINESTRING (10 
10, 20 20, 30 40))  BOX (10.00 10.00, 20.00 20.00)
 NULL   NULLNULLNULLNULLNULLNULLNULLNULLNULL
NULLNULLNULL
 ALTER TABLE "testschema"."testme" ADD TABLE "testschema"."subtable1" AS 
PARTITION FROM RANGE MINVALUE TO '11' WITH NULL VALUES;
 ALTER TABLE "testschema"."testme" ADD TABLE "testschema"."subtable2" AS 
PARTITION FROM '11' TO '20';
___
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org


MonetDB: default - Merge with Dec2023 branch.

2024-02-02 Thread Sjoerd Mullender via checkin-list
Changeset: 70bdd7747f80 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/70bdd7747f80
Branch: default
Log Message:

Merge with Dec2023 branch.


diffs (12 lines):

diff --git a/sql/test/testdb/Tests/dump.stable.out 
b/sql/test/testdb/Tests/dump.stable.out
--- a/sql/test/testdb/Tests/dump.stable.out
+++ b/sql/test/testdb/Tests/dump.stable.out
@@ -101347,7 +101347,7 @@ CREATE TABLE "testschema"."geomtest" (
"m"   MBR
 );
 COPY 2 RECORDS INTO "testschema"."geomtest" FROM stdin USING DELIMITERS 
E'\t',E'\n','"';
-POINT (10.5 12.3)  LINESTRING (10 10, 20 20, 30 40)LINESTRING (10 
10, 20 20, 30 40)POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   
POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   MULTIPOINT (20 80, 110 160, 20 
160) MULTILINESTRING ((0 0, 0 80, 60 80, 60 0, 0 0)) MULTILINESTRING ((0 0, 
0 80, 60 80, 60 0, 0 0)) MULTIPOLYGON (((140 110, 260 110, 170 20, 50 20, 140 
110)), ((300 270, 420 270, 340 190, 220 190, 300 270)))MULTIPOLYGON (((140 
110, 260 110, 170 20, 50 20, 140 110)), ((300 270, 420 270, 340 190, 220 190, 
300 270)))POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   
GEOMETRYCOLLECTION (POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0)), LINESTRING (10 
10, 20 20, 30 40))  BOX (10.00 10.00, 20.00 20.00)
+POINT (10.5 12.3)  LINESTRING (10 10, 20 20, 30 40)LINESTRING (10 
10, 20 20, 30 40)POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   
POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   MULTIPOINT ((20 80), (110 160), 
(20 160))   MULTILINESTRING ((0 0, 0 80, 60 80, 60 0, 0 0)) MULTILINESTRING 
((0 0, 0 80, 60 80, 60 0, 0 0)) MULTIPOLYGON (((140 110, 260 110, 170 20, 50 
20, 140 110)), ((300 270, 420 270, 340 190, 220 190, 300 270)))MULTIPOLYGON 
(((140 110, 260 110, 170 20, 50 20, 140 110)), ((300 270, 420 270, 340 190, 220 
190, 300 270)))POLYGON ((10 10, 10 20, 20 20, 20 15, 10 10))   
GEOMETRYCOLLECTION (POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0)), LINESTRING (10 
10, 20 20, 30 40))  BOX (10.00 10.00, 20.00 20.00)
 NULL   NULLNULLNULLNULLNULLNULLNULLNULLNULL
NULLNULLNULL
 ALTER TABLE "testschema"."testme" ADD TABLE "testschema"."subtable1" AS 
PARTITION FROM RANGE MINVALUE TO '11' WITH NULL VALUES;
 ALTER TABLE "testschema"."testme" ADD TABLE "testschema"."subtable2" AS 
PARTITION FROM '11' TO '20';
___
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org


MonetDB: default - Reapprove (normalize/canonicalize) tests.

2024-02-02 Thread Sjoerd Mullender via checkin-list
Changeset: 2ea27bde71d2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/2ea27bde71d2
Modified Files:
geom/sql/functions/Tests/ST_DWithin.test
geom/sql/functions/Tests/ST_DWithin2.test
geom/sql/functions/Tests/ST_DWithinRTree.test
geom/sql/functions/Tests/ST_Intersects.test
geom/sql/functions/Tests/ST_IntersectsRTree.test
geom/sql/functions/Tests/ST_MakeLine.test
geom/sql/functions/Tests/createRTreeIndex.test
geom/sql/functions/Tests/loadTestPolygons.test
monetdb5/modules/atoms/Tests/asciify.test
monetdb5/modules/atoms/Tests/contains.test
monetdb5/modules/atoms/Tests/endswith.test
monetdb5/modules/atoms/Tests/startswith.test
monetdb5/modules/atoms/Tests/ts_and_tstz_to_str_bug.test
monetdb5/modules/kernel/Tests/batstr_asciify.test
monetdb5/modules/kernel/Tests/batstr_contains.test
monetdb5/modules/kernel/Tests/batstr_endswith.test
monetdb5/modules/kernel/Tests/batstr_startswith.test
monetdb5/modules/mal/Tests/txtsim_jarowinkler.test
monetdb5/modules/mal/Tests/txtsim_levenshtein.test
sql/backends/monet5/UDF/capi/Tests/capi17.test
sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_19.test
sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_25.test
sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_27.test
sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_29.test
sql/backends/monet5/generator/Tests/generator01.test
sql/backends/monet5/generator/Tests/generator03.test
sql/backends/monet5/generator/Tests/generator04.test
sql/benchmarks/tpcds/Tests/one.test.in
sql/benchmarks/tpch/Tests/one.test.in
sql/test/2023/Tests/any_value.test
sql/test/2023/Tests/btrim.test
sql/test/2023/Tests/literals.test
sql/test/BugDay_2005-10-06_2.8/Tests/select_null.test

sql/test/BugDay_2005-10-06_2.9.3/Tests/BATpropcheck_error.SF-1012739.test

sql/test/BugDay_2005-10-06_2.9.3/Tests/CrashMe_SQL_server_crash-1.SF-921673.test

sql/test/BugDay_2005-10-06_2.9.3/Tests/CrashMe_SQL_server_crash-2.SF-921673.test

sql/test/BugDay_2005-10-06_2.9.3/Tests/jdbc_crashes_on_getTables.SF_944316.test
sql/test/BugDay_2005-10-06_2.9.3/Tests/quoted_keywords.SF-922288.test
sql/test/BugDay_2005-10-06_2.9.3/Tests/simple_union.SF-1005596.test
sql/test/BugTracker-2008/Tests/copy-format.SF-2468513.test
sql/test/BugTracker-2008/Tests/groupby_with_NULL.SF-2155606.test
sql/test/BugTracker-2008/Tests/subselect_with_or.SF-2466725.test
sql/test/BugTracker-2008/Tests/varchar.SF-2471371.test

sql/test/BugTracker-2009/Tests/TribooleanFailureWithSubquery.SF-2679434.test
sql/test/BugTracker-2009/Tests/count_bug.SF-2604583.test
sql/test/BugTracker-2009/Tests/count_distinct_bug.SF-2826015.test
sql/test/BugTracker-2009/Tests/overflow.SF-2853458.test
sql/test/BugTracker-2010/Tests/concat_type_check_problem.Bug-2354.test
sql/test/BugTracker-2010/Tests/function_results_NULL.Bug-2626.test
sql/test/BugTracker-2010/Tests/huge_nr_of_columns.Bug-2609.test
sql/test/BugTracker-2011/Tests/CASE_nested_functions.Bug-2852.test
sql/test/BugTracker-2011/Tests/multicolumn_constraints.Bug-2849.test
sql/test/BugTracker-2011/Tests/rand-with-seed.Bug-2900.test
sql/test/BugTracker-2011/Tests/str_cast_exception.Bug-2847.test
sql/test/BugTracker-2012/Tests/boolean_coersion.Bug-3012.test
sql/test/BugTracker-2012/Tests/case_evaluated_too_early.Bug-3186.test

sql/test/BugTracker-2012/Tests/insert_into_table_with_2_foreignkeys.Bug-3124.test
sql/test/BugTracker-2012/Tests/null_except_null.Bug-3040.test
sql/test/BugTracker-2012/Tests/outerjoin_select.Bug-2946.test
sql/test/BugTracker-2013/Tests/aggregates-typing-issues.Bug-3277.test
sql/test/BugTracker-2014/Tests/empty_intermediate_quantile.Bug-3611.test
sql/test/BugTracker-2014/Tests/indices.Bug-3435.test
sql/test/BugTracker-2014/Tests/stringfloatshtcompare.Bug-3512.test
sql/test/BugTracker-2014/Tests/varchar_conversion_crash.Bug-3506.test
sql/test/BugTracker-2015/Tests/cardinality.Bug-3761.test
sql/test/BugTracker-2015/Tests/missed-error.Bug-3842.test
sql/test/BugTracker-2015/Tests/null.Bug-3833.test
sql/test/BugTracker-2015/Tests/null_is_null.Bug-3739.test

sql/test/BugTracker-2016/Tests/RELEASE_SAVEPOINT_after_ALTER_TABLE_crash.Bug-4010.test

sql/test/BugTracker-2016/Tests/column_name_lost_in_in_operator.Bug-6123.test
sql/test/BugTracker-2016/Tests/dce.Bug-6114.test
sql/test/BugTracker-2016/Tests/dce2.Bug-6115.test
sql/test/BugTracker-2016/Tests/update_crash.Bug-3954.test
sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.test
sql/test/BugTracker-2019/Tests/cte-union

MonetDB: cleanup_types - Make CLOB an alias of VARCHAR, set type...

2024-02-02 Thread Sjoerd Mullender via checkin-list
Changeset: 49b0b1eff2b3 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/49b0b1eff2b3
Modified Files:
sql/backends/monet5/sql.c
sql/backends/monet5/sql_execute.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_upgrades.c
sql/backends/monet5/sql_user.c
sql/common/sql_types.c
sql/scripts/52_describe.sql
sql/server/rel_exp.c
sql/server/rel_updates.c
sql/server/rel_xml.c
sql/server/sql_parser.y
sql/server/sql_semantic.c
sql/storage/store.c
Branch: cleanup_types
Log Message:

Make CLOB an alias of VARCHAR, set type of literal strings to VARCHAR.
Mostly done by Niels.


diffs (truncated from 369 to 300 lines):

diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -644,7 +644,7 @@ create_table_from_emit(Client cntxt, cha
sql_column *col = NULL;
 
if (!strcmp(atomname, "str"))
-   sql_find_subtype(&tpe, "clob", 0, 0);
+   sql_find_subtype(&tpe, "varchar", 0, 0);
else {
sql_subtype *t = sql_bind_localtype(atomname);
if (!t)
diff --git a/sql/backends/monet5/sql_execute.c 
b/sql/backends/monet5/sql_execute.c
--- a/sql/backends/monet5/sql_execute.c
+++ b/sql/backends/monet5/sql_execute.c
@@ -166,7 +166,7 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb)
throw(SQL, "sql.statement", SQLSTATE(HY013) MAL_MALLOC_FAIL);
}
q = pushArgument(mb,q, k);
-   q = pushStr(mb,q,"clob");
+   q = pushStr(mb,q,"varchar");
pushInstruction(mb, q);
 
resultset = pushArgument(mb,resultset, getArg(q,0));
diff --git a/sql/backends/monet5/sql_gencode.c 
b/sql/backends/monet5/sql_gencode.c
--- a/sql/backends/monet5/sql_gencode.c
+++ b/sql/backends/monet5/sql_gencode.c
@@ -1746,7 +1746,7 @@ rel_print(mvc *sql, sql_rel *rel, int de
nl, nl);
mnstr_printf(fd, "%% .plan # table_name\n");
mnstr_printf(fd, "%% rel # name\n");
-   mnstr_printf(fd, "%% clob # type\n");
+   mnstr_printf(fd, "%% varchar # type\n");
mnstr_printf(fd, "%% %zu # length\n", len - 1 /* remove = */);
 
/* output the data */
diff --git a/sql/backends/monet5/sql_statement.c 
b/sql/backends/monet5/sql_statement.c
--- a/sql/backends/monet5/sql_statement.c
+++ b/sql/backends/monet5/sql_statement.c
@@ -139,7 +139,7 @@ stmt_atom_string_nil(backend *be)
 {
sql_subtype t;
 
-   sql_find_subtype(&t, "clob", 0, 0);
+   sql_find_subtype(&t, "varchar", 0, 0);
return stmt_atom(be, atom_string(be->mvc->sa, &t, NULL));
 }
 
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
@@ -174,7 +174,14 @@ check_sys_tables(Client c, mvc *m, sql_s
 "update sys._columns 
set type_digits = 15 where type = 'smallint' and type_digits <> 15;\n"
 "update sys._columns 
set type_digits = 31 where type = 'int' and type_digits <> 31;\n"
 "update sys._columns 
set type_digits = 63 where type = 'bigint' and type_digits <> 63;\n"
-"update sys._columns 
set type_digits = 127 where type = 'hugeint' and type_digits <> 127;\n",
+"update sys._columns 
set type_digits = 127 where type = 'hugeint' and type_digits <> 127;\n"
+"update sys._columns 
set type = 'varchar' where type in ('clob', 'char') and table_id in (select id 
from sys._tables where system and name <> 'netcdf_files');\n"
+"update sys.args set 
type_digits = 7 where type = 'tinyint' and type_digits <> 7;\n"
+"update sys.args set 
type_digits = 15 where type = 'smallint' and type_digits <> 15;\n"
+"update sys.args set 
type_digits = 31 where type = 'int' and type_digits <> 31;\n"
+"update sys.args set 
type_digits = 63 where type = 'bigint' and type_digits <> 63;\n"
+"update sys.args set 
type_digits = 127 where type = 'hugeint' and type_digits <> 127;\n"
+"update sys.args set 
type = 'varchar' where type in ('clob', 'char');\n",
 "update", true, false, 
NULL);
if (err)
return err;
diff --git a/sql/bac

MonetDB: cleanup_types - Merge with default branch.

2024-02-02 Thread Sjoerd Mullender via checkin-list
Changeset: 85ac026c352f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/85ac026c352f
Modified Files:
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_statement.c
sql/benchmarks/tpcds/Tests/one.test.in
sql/server/rel_basetable.c
sql/server/rel_exp.c
sql/server/rel_propagate.c
sql/server/rel_select.c
sql/server/rel_statistics.c
sql/server/rel_statistics.h
sql/server/rel_unnest.c
sql/server/sql_parser.y

sql/test/BugDay_2005-10-06_2.9.3/Tests/CrashMe_SQL_server_crash-2.SF-921673.test
sql/test/BugTracker-2023/Tests/greatest-least-multi-arg-7391.test
sql/test/BugTracker-2023/Tests/misc-crashes-7390.test
sql/test/BugTracker-2024/Tests/alloc-overflow-7432.test
sql/test/SQLancer/Tests/sqlancer10.test
sql/test/Tests/select_window_pushdown.test
sql/test/emptydb/Tests/check.stable.out.32bit
sql/test/miscellaneous/Tests/simple_selects.test
sql/test/miscellaneous/Tests/unique_keys.test
sql/test/sys-schema/Tests/webExamplesComparisonFunctionsOperators.test
sql/test/sys-schema/Tests/webExamplesMathematicalFunctionsOperators.test
Branch: cleanup_types
Log Message:

Merge with default branch.


diffs (truncated from 20480 to 300 lines):

diff --git a/clients/ChangeLog b/clients/ChangeLog
--- a/clients/ChangeLog
+++ b/clients/ChangeLog
@@ -1,6 +1,19 @@
 # ChangeLog file for clients
 # This file is updated with Maddlog
 
+* Thu Jan 25 2024 Sjoerd Mullender 
+- Msqldump now accepts --output and --outputdir options.  When the
+  --outputdir option is used, the dump is placed in the file dump.sql in
+  the specified directory and all tables are dumped to separate CSV files.
+  In this way it is feasible to edit the dump script by hand if needed,
+  even for a large database.
+
+* Wed Jan 24 2024 Sjoerd Mullender 
+- The --table (-t) option of msqldump now accepts SQL-style % wildcard
+  characters to dump all tables that match the pattern.  E.g. -t
+  %test%.%test% dumps all tables with 'test' in both the schema and
+  table name.
+
 * Wed Jan 10 2024 Sjoerd Mullender 
 - Implemented interrupt handling in mclient.  When using mclient
   interactively, an interrupt (usually control-C) stops whatever the
diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c
--- a/clients/mapiclient/dump.c
+++ b/clients/mapiclient/dump.c
@@ -182,27 +182,27 @@ sescape(const char *s)
 }
 
 static int
-comment_on(stream *toConsole, const char *object,
+comment_on(stream *sqlf, const char *object,
   const char *ident1, const char *ident2, const char *ident3,
   const char *remark)
 {
if (remark) {
-   if (mnstr_printf(toConsole, "COMMENT ON %s ", object) < 0 ||
-   dquoted_print(toConsole, ident1, NULL) < 0)
+   if (mnstr_printf(sqlf, "COMMENT ON %s ", object) < 0 ||
+   dquoted_print(sqlf, ident1, NULL) < 0)
return -1;
if (ident2) {
-   if (mnstr_printf(toConsole, ".") < 0 ||
-   dquoted_print(toConsole, ident2, NULL) < 0)
+   if (mnstr_printf(sqlf, ".") < 0 ||
+   dquoted_print(sqlf, ident2, NULL) < 0)
return -1;
if (ident3) {
-   if (mnstr_printf(toConsole, ".") < 0 ||
-   dquoted_print(toConsole, ident3, NULL) < 0)
+   if (mnstr_printf(sqlf, ".") < 0 ||
+   dquoted_print(sqlf, ident3, NULL) < 0)
return -1;
}
}
-   if (mnstr_write(toConsole, " IS ", 1, 4) < 0 ||
-   squoted_print(toConsole, remark, '\'', false) < 0 ||
-   mnstr_write(toConsole, ";\n", 1, 2) < 0)
+   if (mnstr_write(sqlf, " IS ", 1, 4) < 0 ||
+   squoted_print(sqlf, remark, '\'', false) < 0 ||
+   mnstr_write(sqlf, ";\n", 1, 2) < 0)
return -1;
}
return 0;
@@ -249,7 +249,7 @@ bailout:
else if (mapi_error(mid))
mapi_explain_query(hdl, stderr);
else
-   fprintf(stderr, "malloc failure1\n");
+   fprintf(stderr, "malloc failure\n");
mapi_close_handle(hdl);
} else if (mapi_error(mid))
mapi_explain(mid, stderr);
@@ -453,7 +453,7 @@ bailout:
 }
 
 static int
-dump_foreign_keys(Mapi mid, const char *schema, const char *tname, const char 
*tid, stream *toConsole)
+dump_foreign_keys(Mapi mid, const char *schema, const char *tname, const char 
*tid, stream *sqlf)
 {
MapiHdl hdl = NULL;
int cnt, i;
@@ -663,31 +663,31 @@ dump_

MonetDB: cleanup_types - Implemented upgrade + approved changes.

2024-02-02 Thread Sjoerd Mullender via checkin-list
Changeset: c897ecb86b67 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/c897ecb86b67
Modified Files:
clients/odbc/tests/ODBCmetadata.c
clients/odbc/tests/ODBCtester.c
clients/ruby/Tests/gemtest.rb
sql/backends/monet5/sql_upgrades.c
sql/benchmarks/tpcds/Tests/one.test.in
sql/scripts/52_describe.sql

sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.test
sql/test/BugTracker-2016/Tests/merge_project.Bug-3955.test

sql/test/BugTracker-2017/Tests/crash_after_oidx_on_sys_statistics.Bug-6251.test

sql/test/BugTracker-2018/Tests/count_from_commented_function_signatures.Bug-6542.test

sql/test/BugTracker-2021/Tests/WITH-alias-DELETE-2.deletes-too-many-tuples.Bug-7133.test
sql/test/BugTracker-2023/Tests/greatest-least-multi-arg-7391.test
sql/test/BugTracker-2023/Tests/join-on-row_number-over-7403.test
sql/test/BugTracker-2023/Tests/misc-crashes-7390.test
sql/test/Dependencies/Tests/dependency_DBobjects.test
sql/test/Dependencies/Tests/dependency_functions.test
sql/test/Dependencies/Tests/dependency_owner_schema_3.test
sql/test/Dump/Tests/dump-again.stable.out
sql/test/Dump/Tests/dump.stable.out

sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-plan-0join-query.test

sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-plan-1join-query.test

sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-plan-1join-view.test

sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-plan-2join-query.test

sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-plan-2join-view.test
sql/test/SQLancer/Tests/sqlancer10.test
sql/test/Tests/keys.test
sql/test/Tests/select_window_pushdown.test
sql/test/astro/Tests/astro.test
sql/test/copy/Tests/nonutf8.test

sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
sql/test/emptydb/Tests/check.SQL.py
sql/test/emptydb/Tests/check.stable.out
sql/test/emptydb/Tests/check.stable.out.32bit
sql/test/emptydb/Tests/check.stable.out.int128
sql/test/file_loader/Tests/file_loader_function.test
sql/test/information-schema/Tests/columns.test
sql/test/miscellaneous/Tests/deallocate.stable.out
sql/test/miscellaneous/Tests/groupby_prepare.stable.out
sql/test/miscellaneous/Tests/prepare.test
sql/test/miscellaneous/Tests/rel_push_count_down.test
sql/test/miscellaneous/Tests/select_groupby.stable.out
sql/test/miscellaneous/Tests/simple_plans.test
sql/test/miscellaneous/Tests/unique_keys.test
sql/test/pg_regress/Tests/int8.test
sql/test/prepare/Tests/named_placeholders.test
sql/test/prepare/Tests/prepare-insert-into.stable.out
sql/test/prepare/Tests/prepare-types.Bug-6724.stable.out
sql/test/prepare/Tests/prepare_commit_execute.SF-2606020.stable.out
sql/test/prepare/Tests/prepare_doesnot_like_LIKE.SF-1234205.stable.out
sql/test/prepare/Tests/prepare_unop_crash.Bug-3653.stable.out
sql/test/prepare/Tests/prepared-merge-statement.Bug-6706.stable.out
sql/test/prepare/Tests/prepared-statement-with-udf.Bug-6650.stable.out
sql/test/prepare/Tests/sqlancer_prepare.stable.out.int128
sql/test/sql_dump/Tests/dump.test
sql/test/sql_xml/Tests/cleanupfuncs.test
sql/test/strimps/Tests/strimps_stable_counts2.test
sql/test/sys-schema/Tests/webExamplesComparisonFunctionsOperators.test

sql/test/testdb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/testdb-previous-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out
sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out.int128
sql/test/testdb-upgr