Changeset: eb81b910f336 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=eb81b910f336
Removed Files:
sql/scripts/09_like.sql
Modified Files:
sql/backends/monet5/CMakeLists.txt
sql/backends/monet5/sql_upgrades.c
sql/common/sql_types.c
sql/scripts/CMakeLists.txt
sql/storage/bat/bat_logger.c
sql/test/BugDay_2005-10-06_2.9.3/Tests/simple_union.SF-1005596.stable.out
sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out
sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out
sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out.single
sql/test/bugs/Tests/subselect_multiple_unionall_where_1=1-bug-sf-1005596.stable.out
sql/test/miscellaneous/Tests/simple_selects.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
Branch: Oct2020
Log Message:
Cleanup, move like and ilike filter functions definitions into sql_types. This
adds the missing 'char' and 'varchar' types definitions
diffs (truncated from 409 to 300 lines):
diff --git a/sql/backends/monet5/CMakeLists.txt
b/sql/backends/monet5/CMakeLists.txt
--- a/sql/backends/monet5/CMakeLists.txt
+++ b/sql/backends/monet5/CMakeLists.txt
@@ -14,7 +14,6 @@ set(sql_public_headers
add_library(sql SHARED)
set(include_sql_files
- 09_like
12_url
13_date
14_inet
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
@@ -2313,7 +2313,7 @@ sql_update_oscar(Client c, mvc *sql, con
"DROP FUNCTION
\"sys\".\"getcontent\"(url);\n"
"DROP AGGREGATE
\"json\".\"output\"(json);\n");
- /* Move sys.degrees and sys.radians to sql_types.c
definitions (I did this at the bat_logger) Remove the obsolete entries at
privileges table */
+ /* Move sys.degrees,sys.radians,sys.like and sys.ilike
to sql_types.c definitions (I did this at the bat_logger) Remove the obsolete
entries at privileges table */
pos += snprintf(buf + pos, bufsize - pos,
"delete from privileges where obj_id in
(select obj_id from privileges left join functions on privileges.obj_id =
functions.id where functions.id is null and privileges.obj_id not in ((SELECT
tables.id from tables), 0));\n");
diff --git a/sql/common/sql_types.c b/sql/common/sql_types.c
--- a/sql/common/sql_types.c
+++ b/sql/common/sql_types.c
@@ -1075,6 +1075,19 @@ sql_create_aggr(sql_allocator *sa, const
}
static sql_func *
+sql_create_filter(sql_allocator *sa, const char *name, const char *mod, const
char *imp, bit semantics, bit side_effect, int fix_scale,
+ unsigned int res_scale, int nargs, ...)
+{
+ sql_func *res;
+ va_list valist;
+
+ va_start(valist, nargs);
+ res = sql_create_func_(sa, name, mod, imp, F_FILT, semantics,
side_effect, fix_scale, res_scale, BIT, nargs, valist);
+ va_end(valist);
+ return res;
+}
+
+static sql_func *
sql_create_union(sql_allocator *sa, const char *name, const char *mod, const
char *imp, bit side_effect, int fix_scale,
unsigned int res_scale, sql_type *fres, int
nargs, ...)
{
@@ -1798,16 +1811,15 @@ sqltypeinit( sql_allocator *sa)
sql_create_func(sa, "substring", "str", "substring", FALSE,
FALSE, INOUT, 0, *t, 3, *t, INT, INT);
sql_create_func(sa, "substr", "str", "substring", FALSE, FALSE,
INOUT, 0, *t, 2, *t, INT);
sql_create_func(sa, "substr", "str", "substring", FALSE, FALSE,
INOUT, 0, *t, 3, *t, INT, INT);
- /*
- sql_create_func(sa, "like", "algebra", "like", FALSE,
SCALE_NONE, 0, BIT, 2, *t, *t);
- sql_create_func3(sa, "like", "algebra", "like", FALSE,
SCALE_NONE, 0, BIT, 3, *t, *t, *t);
- sql_create_func(sa, "ilike", "algebra", "ilike", FALSE,
SCALE_NONE, 0, BIT, 2, *t, *t);
- sql_create_func3(sa, "ilike", "algebra", "ilike", FALSE,
SCALE_NONE, 0, BIT, 3, *t, *t, *t);
- */
- sql_create_func(sa, "not_like", "algebra", "not_like", FALSE,
FALSE, SCALE_NONE, 0, BIT, 2, *t, *t);
- sql_create_func(sa, "not_like", "algebra", "not_like", FALSE,
FALSE, SCALE_NONE, 0, BIT, 3, *t, *t, *t);
- sql_create_func(sa, "not_ilike", "algebra", "not_ilike", FALSE,
FALSE, SCALE_NONE, 0, BIT, 2, *t, *t);
- sql_create_func(sa, "not_ilike", "algebra", "not_ilike", FALSE,
FALSE, SCALE_NONE, 0, BIT, 3, *t, *t, *t);
+
+ sql_create_filter(sa, "like", "algebra", "like", FALSE, FALSE,
SCALE_NONE, 0, 2, *t, *t);
+ sql_create_filter(sa, "like", "algebra", "like", FALSE, FALSE,
SCALE_NONE, 0, 3, *t, *t, *t);
+ sql_create_filter(sa, "ilike", "algebra", "ilike", FALSE,
FALSE, SCALE_NONE, 0, 2, *t, *t);
+ sql_create_filter(sa, "ilike", "algebra", "ilike", FALSE,
FALSE, SCALE_NONE, 0, 3, *t, *t, *t);
+ sql_create_filter(sa, "not_like", "algebra", "not_like", FALSE,
FALSE, SCALE_NONE, 0, 2, *t, *t);
+ sql_create_filter(sa, "not_like", "algebra", "not_like", FALSE,
FALSE, SCALE_NONE, 0, 3, *t, *t, *t);
+ sql_create_filter(sa, "not_ilike", "algebra", "not_ilike",
FALSE, FALSE, SCALE_NONE, 0, 2, *t, *t);
+ sql_create_filter(sa, "not_ilike", "algebra", "not_ilike",
FALSE, FALSE, SCALE_NONE, 0, 3, *t, *t, *t);
sql_create_func(sa, "patindex", "pcre", "patindex", FALSE,
FALSE, SCALE_NONE, 0, INT, 2, *t, *t);
sql_create_func(sa, "truncate", "str", "stringleft", FALSE,
FALSE, SCALE_NONE, 0, *t, 2, *t, INT);
diff --git a/sql/scripts/09_like.sql b/sql/scripts/09_like.sql
deleted file mode 100644
--- a/sql/scripts/09_like.sql
+++ /dev/null
@@ -1,15 +0,0 @@
--- This Source Code Form is subject to the terms of the Mozilla Public
--- License, v. 2.0. If a copy of the MPL was not distributed with this
--- file, You can obtain one at http://mozilla.org/MPL/2.0/.
---
--- Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
-
-create filter function "like"(val string, pat string, esc string) external
name algebra."like";
-create filter function "ilike"(val string, pat string, esc string) external
name algebra."ilike";
-create filter function "like"(val string, pat string) external name
algebra."like";
-create filter function "ilike"(val string, pat string) external name
algebra."ilike";
-
-grant execute on filter function "like" (string, string, string) to public;
-grant execute on filter function "ilike" (string, string, string) to public;
-grant execute on filter function "like" (string, string) to public;
-grant execute on filter function "ilike" (string, string) to public;
diff --git a/sql/scripts/CMakeLists.txt b/sql/scripts/CMakeLists.txt
--- a/sql/scripts/CMakeLists.txt
+++ b/sql/scripts/CMakeLists.txt
@@ -8,7 +8,6 @@
#[[
install(FILES
- 09_like.sql
12_url.sql
13_date.sql
14_inet.sql
diff --git a/sql/storage/bat/bat_logger.c b/sql/storage/bat/bat_logger.c
--- a/sql/storage/bat/bat_logger.c
+++ b/sql/storage/bat/bat_logger.c
@@ -871,7 +871,7 @@ bl_postversion(void *lg)
"storage", str_nil,
NULL) != GDK_SUCCEED)
return GDK_FAIL;
- { /* move sql.degrees and sql.radians functions from
10_math.sql script to sql_types list */
+ { /* move sql.degrees, sql.radians, sql.like and
sql.ilike functions from 09_like.sql and 10_math.sql script to sql_types list */
BAT *func_func = temp_descriptor(logger_find_bat(lg,
N("sys", "functions", "name"), 0, 0));
if (func_func == NULL) {
return GDK_FAIL;
@@ -882,7 +882,6 @@ bl_postversion(void *lg)
return GDK_FAIL;
}
BAT *radians_func = BATselect(func_func, NULL,
"radians", NULL, 1, 1, 0);
- bat_destroy(func_func);
if (radians_func == NULL) {
bat_destroy(degrees_func);
return GDK_FAIL;
@@ -892,16 +891,46 @@ bl_postversion(void *lg)
bat_destroy(degrees_func);
bat_destroy(radians_func);
if (cands == NULL) {
+ bat_destroy(func_func);
+ return GDK_FAIL;
+ }
+
+ BAT *like_func = BATselect(func_func, NULL, "like",
NULL, 1, 1, 0);
+ if (like_func == NULL) {
+ bat_destroy(func_func);
+ bat_destroy(cands);
+ return GDK_FAIL;
+ }
+
+ BAT *ncands = BATmergecand(cands, like_func);
+ bat_destroy(cands);
+ bat_destroy(like_func);
+ if (ncands == NULL) {
+ bat_destroy(func_func);
+ return GDK_FAIL;
+ }
+
+ BAT *ilike_func = BATselect(func_func, NULL, "ilike",
NULL, 1, 1, 0);
+ bat_destroy(func_func);
+ if (ilike_func == NULL) {
+ bat_destroy(ncands);
+ return GDK_FAIL;
+ }
+
+ BAT *final_cands = BATmergecand(ncands, ilike_func);
+ bat_destroy(ncands);
+ bat_destroy(ilike_func);
+ if (final_cands == NULL) {
return GDK_FAIL;
}
BAT *sys_funcs = temp_descriptor(logger_find_bat(lg,
D("sys", "functions"), 0, 0));
if (sys_funcs == NULL) {
- bat_destroy(cands);
+ bat_destroy(final_cands);
return GDK_FAIL;
}
- gdk_return res = BATappend(sys_funcs, cands, NULL,
true);
- bat_destroy(cands);
+ gdk_return res = BATappend(sys_funcs, final_cands,
NULL, true);
+ bat_destroy(final_cands);
bat_destroy(sys_funcs);
if (res != GDK_SUCCEED)
return res;
diff --git
a/sql/test/BugDay_2005-10-06_2.9.3/Tests/simple_union.SF-1005596.stable.out
b/sql/test/BugDay_2005-10-06_2.9.3/Tests/simple_union.SF-1005596.stable.out
--- a/sql/test/BugDay_2005-10-06_2.9.3/Tests/simple_union.SF-1005596.stable.out
+++ b/sql/test/BugDay_2005-10-06_2.9.3/Tests/simple_union.SF-1005596.stable.out
@@ -25,7 +25,7 @@ stdout of test 'simple_union.SF-1005596`
% .tables, .tables, .tables, .tables, .tables,
.tables, .tables, .tables, .tables, .tables #
table_name
% TABLE_CAT, TABLE_SCHEM, TABLE_NAME, TABLE_TYPE, REMARKS,
TYPE_CAT, TYPE_SCHEM, TYPE_NAME, SELF_REFERENCING_COL_NAME,
REF_GENERATION # name
-% char, varchar, varchar, clob, char, char, char,
char, char, char # type
+% char, varchar, varchar, char, char, char, char,
char, char, char # type
% 4, 3, 4, 5, 0, 0, 0, 0, 5, 6 #
length
[ "demo", "sys", "test", "TABLE", "", NULL, NULL, NULL,
"rowid", "SYSTEM" ]
diff --git
a/sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out
b/sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out
---
a/sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out
+++
b/sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out
@@ -88,7 +88,7 @@ stdout of test 'memory-consumption-query
% .plan # table_name
% rel # name
% clob # type
-% 2565 # length
+% 2505 # length
top N (
| project (
| | select (
@@ -168,7 +168,7 @@ top N (
| | | | ) [ "a3"."t3pkcol" HASHCOL = "table1"."t1cold113" ],
| | | | table(sys.table12) [ "table12"."t12cola1" ] COUNT
| | | ) [ "table12"."t12cola1" = "table1"."t1cola1" ]
-| | ) [ (((((((((((((((clob[char["table1"."t1cold1"]] as "table1"."t1cold1")
FILTER ilike (clob "%a%", clob "")) or ((clob[char["table1"."t1cola1"]] as
"table1"."t1cola1") FILTER ilike (clob "%a%", clob ""))) or
((clob[char["table1"."t1colb1"]] as "table1"."t1colb1") FILTER ilike (clob
"%a%", clob ""))) or ((clob[char["table1"."t1cola11"]] as "table1"."t1cola11")
FILTER ilike (clob "%business%", clob ""))) or ("table1"."t1colc91" >=
timestamp(7) "2016-03-21 05:00:00.000000")) or ("table1"."t1cola101" = tinyint
"1")) or ((clob[char["table1"."t1cola12"]] as "table1"."t1cola12") FILTER ilike
(clob "%Vijay%", clob ""))) or ((clob[char["table2"."t2cola1"]] as
"table2"."t2cola1") ! FILTER ilike (clob "%gmail%", clob ""),
(clob[char["table2"."t2cola1"]] as "table2"."t2cola1") ! FILTER ilike (clob
"%yahoo%", clob ""))) or ((clob[char["table2"."t2cola1"]] as
"table2"."t2cola1") FILTER ilike (clob "%efequitygroup.com%", clob ""))) or
("table4"."t4cola1" = clob "Customer")) or ("table4"."t4col
a2" ! * = clob "NULL")) or ("table2"."t2cola81" >= date "2009-08-31")) or
((("table5"."t5cola1" = clob "BAT") or ((clob[char["table5"."t5cola2"]] as
"table5"."t5cola2") FILTER ilike (clob "%AUSTRALIA%", clob ""))) or
((clob[char["table5"."t5cola2"]] as "table5"."t5cola2") FILTER ilike (clob
"%Monet%", clob ""), "table5"."t5cola3" = clob "Facebook", "table5"."t5cola5" =
clob "new", "table5"."t5cola81" > date "2015-07-30"))) or
((("table10"."t10cola1" != clob "Completed", "table9"."t9cola1" = clob "Tasks",
"table9"."t9cola91" >= timestamp(7) "2012-01-01 04:32:27.000000",
"table10"."t10cola91" <= timestamp(7) "2013-01-01 04:32:27.000000") or
("table9"."t9cola1" = clob "Events", timestamp(7) "2012-01-01 04:32:27.000000"
<= "table11"."t11cola91" <= timestamp(7) "2013-01-01 04:32:27.000000" BETWEEN
)) or ("table9"."t9cola1" = clob "Calls", timestamp(7) "2012-01-01
04:32:27.000000" <= "table10"."t10cola91" <= timestamp(7) "2013-01-01
04:32:27.000000" BETWEEN )), "table1"."t1cold111" in (bi
gint "15842000014793046" as "%64"."%64", bigint "1584
2000017701488" as "%65"."%65", bigint "15842000000024019" as "%66"."%66",
bigint "15842000000074007" as "%67"."%67", bigint "15842000009358096" as
"%70"."%70", bigint "15842000010487625" as "%71"."%71", bigint
"15842000006731919" as "%72"."%72", bigint "15842000002590112" as "%73"."%73",
bigint "15842000000019001" as "%74"."%74", bigint "15842000014923682" as
"%75"."%75", bigint "15842000027547249" as "%76"."%76")) or
("table12"."t12cola1" in (clob[bigint "15842000280111951"], clob[bigint
"15842000280163015"])) ]
+| | ) [ (((((((((((((((char["table1"."t1cold1"] as "table1"."t1cold1") FILTER
ilike (char "%a%", char "")) or ((char["table1"."t1cola1"] as
"table1"."t1cola1") FILTER ilike (char "%a%", char ""))) or
((char["table1"."t1colb1"] as "table1"."t1colb1") FILTER ilike (char "%a%",
char ""))) or ((char["table1"."t1cola11"] as "table1"."t1cola11") FILTER ilike
(char "%business%", char ""))) or ("table1"."t1colc91" >= timestamp(7)
"2016-03-21 05:00:00.000000")) or ("table1"."t1cola101" = tinyint "1")) or
((char["table1"."t1cola12"] as "table1"."t1cola12") FILTER ilike (char
"%Vijay%", char ""))) or ((char["table2"."t2cola1"] as "table2"."t2cola1") !
FILTER ilike (char "%gmail%", char ""), (char["table2"."t2cola1"] as
"table2"."t2cola1") ! FILTER ilike (char "%yahoo%", char ""))) or
((char["table2"."t2cola1"] as "table2"."t2cola1") FILTER ilike (char
"%efequitygroup.com%", char ""))) or ("table4"."t4cola1" = clob "Customer")) or
("table4"."t4cola2" ! * = clob "NULL")) or ("table2"."t2cola81"
>= date "2009-08-31")) or ((("table5"."t5cola1" = clob "BAT") or
>((char["table5"."t5cola2"] as "table5"."t5cola2") FILTER ilike (char
>"%AUSTRALIA%", char ""))) or ((char["table5"."t5cola2"] as
>"table5"."t5cola2") FILTER ilike (char "%Monet%", char ""),
>"table5"."t5cola3" = clob "Facebook", "table5"."t5cola5" = clob "new",
>"table5"."t5cola81" > date "2015-07-30"))) or ((("table10"."t10cola1" != clob
>"Completed", "table9"."t9cola1" = clob "Tasks", "table9"."t9cola91" >=
>timestamp(7) "2012-01-01 04:32:27.000000", "table10"."t10cola91" <=
>timestamp(7) "2013-01-01 04:32:27.000000") or ("table9"."t9cola1" = clob
>"Events", timestamp(7) "2012-01-01 04:32:27.000000" <= "table11"."t11cola91"
><= timestamp(7) "2013-01-01 04:32:27.000000" BETWEEN )) or
>("table9"."t9cola1" = clob "Calls", timestamp(7) "2012-01-01 04:32:27.000000"
><= "table10"."t10cola91" <= timestamp(7) "2013-01-01 04:32:27.000000" BETWEEN
>)), "table1"."t1cold111" in (bigint "15842000014793046" as "%64"."%64",
>bigint "15842000017
701488" as "%65"."%65", bigint "15842000000024019" as
"%66"."%66", bigint "15842000000074007" as "%67"."%67", bigint
"15842000009358096" as "%70"."%70", bigint "15842000010487625" as "%71"."%71",
bigint "15842000006731919" as "%72"."%72", bigint "15842000002590112" as
"%73"."%73", bigint "15842000000019001" as "%74"."%74", bigint
"15842000014923682" as "%75"."%75", bigint "15842000027547249" as "%76"."%76"))
or ("table12"."t12cola1" in (clob[bigint "15842000280111951"], clob[bigint
"15842000280163015"])) ]
| ) [ "table1"."t1pkcol" NOT NULL HASHCOL , "table1"."t1cola82",
"table2"."t2cola10", "table1"."t1cola1", "table1"."t1cola91", "a1"."t3cola1" ]
[ "table2"."t2cola82" NULLS LAST ]
) [ bigint "10", bigint "0" ]
#ROLLBACK;
diff --git
a/sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out
b/sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out
--- a/sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out
+++ b/sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out
@@ -9,12 +9,12 @@ stdout of test 'values-like-join.Bug-695
% .plan # table_name
% rel # name
% clob # type
-% 94 # length
+% 82 # length
project (
| join (
| | [ [ char(3) "one", char(3) "two" ] as "l"."s" ],
| | [ [ char(5) "three", char(5) "four" ] as "r"."s" ]
-| ) [ (clob[char["l"."s"]] as "l"."s") FILTER like (clob[char["r"."s"]] as
"r"."s", clob "") ]
+| ) [ (char["l"."s"] as "l"."s") FILTER like (char["r"."s"] as "r"."s", char
"") ]
) [ tinyint "1" ]
#explain select 1 from (values ('one'), ('two')) as l(s), (values ('three'),
('four')) as r(s) where l.s like r.s;
% .explain # table_name
diff --git
a/sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out.single
b/sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out.single
--- a/sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out.single
+++ b/sql/test/BugTracker-2020/Tests/values-like-join.Bug-6954.stable.out.single
@@ -9,12 +9,12 @@ stdout of test 'values-like-join.Bug-695
% .plan # table_name
% rel # name
% clob # type
-% 94 # length
+% 82 # length
project (
| join (
| | [ [ char(3) "one", char(3) "two" ] as "l"."s" ],
| | [ [ char(5) "three", char(5) "four" ] as "r"."s" ]
-| ) [ (clob[char["l"."s"]] as "l"."s") FILTER like (clob[char["r"."s"]] as
"r"."s", clob "") ]
+| ) [ (char["l"."s"] as "l"."s") FILTER like (char["r"."s"] as "r"."s", char
"") ]
) [ tinyint "1" ]
#explain select 1 from (values ('one'), ('two')) as l(s), (values ('three'),
('four')) as r(s) where l.s like r.s;
% .explain # table_name
diff --git
a/sql/test/bugs/Tests/subselect_multiple_unionall_where_1=1-bug-sf-1005596.stable.out
b/sql/test/bugs/Tests/subselect_multiple_unionall_where_1=1-bug-sf-1005596.stable.out
---
a/sql/test/bugs/Tests/subselect_multiple_unionall_where_1=1-bug-sf-1005596.stable.out
+++
b/sql/test/bugs/Tests/subselect_multiple_unionall_where_1=1-bug-sf-1005596.stable.out
@@ -59,7 +59,7 @@ stdout of test 'subselect_multiple_union
[ 2 ]
% .tables, .tables, .tables, .tables, .tables,
.tables, .tables, .tables, .tables, .tables #
table_name
% TABLE_CAT, TABLE_SCHEM, TABLE_NAME, TABLE_TYPE, REMARKS,
TYPE_CAT, TYPE_SCHEM, TYPE_NAME, SELF_REFERENCING_COL_NAME,
REF_GENERATION # name
-% char, varchar, varchar, clob, char, char, char,
char, char, char # type
+% char, varchar, varchar, char, char, char, char,
char, char, char # type
% 4, 0, 0, 0, 0, 0, 0, 0, 5, 6 #
length
#SELECT 3 AS number;
% . # table_name
@@ -69,7 +69,7 @@ stdout of test 'subselect_multiple_union
[ 3 ]
% .tables, .tables, .tables, .tables, .tables,
.tables, .tables, .tables, .tables, .tables #
table_name
% TABLE_CAT, TABLE_SCHEM, TABLE_NAME, TABLE_TYPE, REMARKS,
TYPE_CAT, TYPE_SCHEM, TYPE_NAME, SELF_REFERENCING_COL_NAME,
REF_GENERATION # name
-% char, varchar, varchar, clob, char, char, char,
char, char, char # type
+% char, varchar, varchar, char, char, char, char,
char, char, char # type
% 4, 3, 11, 5, 0, 0, 0, 0, 5, 6 #
length
[ "demo", "sys", "test_update", "TABLE", "", NULL, NULL,
NULL, "rowid", "SYSTEM" ]
diff --git a/sql/test/miscellaneous/Tests/simple_selects.stable.out
b/sql/test/miscellaneous/Tests/simple_selects.stable.out
--- a/sql/test/miscellaneous/Tests/simple_selects.stable.out
+++ b/sql/test/miscellaneous/Tests/simple_selects.stable.out
@@ -239,14 +239,14 @@ stdout of test 'simple_selects` in direc
[ 2 ]
#select x like null, null like x, null like null, x ilike null, null ilike x,
null ilike null,
# x not like null, null not like x, null not like null, x not ilike
null, null not ilike x, null not ilike null from x;
-% sys.%1, .%2, .%3, sys.%4, .%5, .%6, .%7, .%10, .%11,
.%12, .%13, .%14 # table_name
+% .%1, .%2, .%3, .%4, .%5, .%6, .%7, .%10, .%11, .%12,
.%13, .%14 # table_name
% %1, %2, %3, %4, %5, %6, %7, %10, %11, %12,
%13, %14 # name
% boolean, boolean, boolean, boolean, boolean,
boolean, boolean, boolean, boolean, boolean,
boolean, boolean # type
% 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5 # length
[ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL ]
[ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL ]
#select x like null from x;
-% sys.%1 # table_name
+% .%1 # table_name
% %1 # name
% boolean # type
% 5 # length
diff --git a/sql/test/sys-schema/Tests/systemfunctions.stable.out
b/sql/test/sys-schema/Tests/systemfunctions.stable.out
--- a/sql/test/sys-schema/Tests/systemfunctions.stable.out
+++ b/sql/test/sys-schema/Tests/systemfunctions.stable.out
@@ -902,11 +902,27 @@ stdout of test 'systemfunctions` in dire
[ "sys", "ifthenelse", 1, "boolean", "" ]
[ "sys", "ifthenelse", 2, "any", "" ]
[ "sys", "ifthenelse", 3, "any", "" ]
-[ "sys", "ilike", 0, "clob", "create filter function
\"ilike\"(val string, pat string, esc string) external name algebra.\"ilike\";"
]
+[ "sys", "ilike", 0, "boolean", "ilike" ]
+[ "sys", "ilike", 1, "char", "" ]
+[ "sys", "ilike", 2, "char", "" ]
+[ "sys", "ilike", 0, "boolean", "ilike" ]
+[ "sys", "ilike", 1, "char", "" ]
+[ "sys", "ilike", 2, "char", "" ]
+[ "sys", "ilike", 3, "char", "" ]
+[ "sys", "ilike", 0, "boolean", "ilike" ]
+[ "sys", "ilike", 1, "varchar", "" ]
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list