MonetDB: default - Merge with Dec2023 branch.
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.
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.
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.
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...
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.
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.
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