Changeset: 276d5c97fe2c for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=276d5c97fe2c
Modified Files:
sql/common/sql_types.c
sql/test/analytics/Tests/analytics17.stable.out
sql/test/group-concat/Tests/groupconcat05.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
Branch: Oct2020
Log Message:
More functions missing 'char' and 'varchar' signatures
diffs (286 lines):
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
@@ -1400,8 +1400,10 @@ sqltypeinit( sql_allocator *sa)
sql_create_aggr(sa, "count_no_nil", "aggr", "count_no_nil", TRUE, LNG,
0);
sql_create_aggr(sa, "count", "aggr", "count", TRUE, LNG, 1, ANY);
- sql_create_aggr(sa, "listagg", "aggr", "str_group_concat", TRUE, STR,
1, STR);
- sql_create_aggr(sa, "listagg", "aggr", "str_group_concat", TRUE, STR,
2, STR, STR);
+ for (t = strings; t < numerical; t++) {
+ sql_create_aggr(sa, "listagg", "aggr", "str_group_concat",
TRUE, *t, 1, *t);
+ sql_create_aggr(sa, "listagg", "aggr", "str_group_concat",
TRUE, *t, 2, *t, *t);
+ }
/* order based operators */
sql_create_analytic(sa, "diff", "sql", "diff", SCALE_NONE, BIT, 1, ANY);
@@ -1591,9 +1593,10 @@ sqltypeinit( sql_allocator *sa)
sql_create_analytic(sa, "avg", "sql", "avg", SCALE_NONE, MONINT, 1,
MONINT);
sql_create_analytic(sa, "avg", "sql", "avg", SCALE_NONE, SECINT, 1,
SECINT);
- sql_create_analytic(sa, "listagg", "sql", "str_group_concat",
SCALE_NONE, STR, 1, STR);
- sql_create_analytic(sa, "listagg", "sql", "str_group_concat",
SCALE_NONE, STR, 2, STR, STR);
-
+ for (t = strings; t < numerical; t++) {
+ sql_create_analytic(sa, "listagg", "sql", "str_group_concat",
SCALE_NONE, *t, 1, *t);
+ sql_create_analytic(sa, "listagg", "sql", "str_group_concat",
SCALE_NONE, *t, 2, *t, *t);
+ }
sql_create_func(sa, "and", "calc", "and", TRUE, FALSE, SCALE_FIX, 0,
BIT, 2, BIT, BIT);
sql_create_func(sa, "or", "calc", "or", TRUE, FALSE, SCALE_FIX, 0,
BIT, 2, BIT, BIT);
sql_create_func(sa, "xor", "calc", "xor", FALSE, FALSE, SCALE_FIX, 0,
BIT, 2, BIT, BIT);
@@ -1800,10 +1803,11 @@ sqltypeinit( sql_allocator *sa)
sql_create_func(sa, "minute", "mtime", "minutes", FALSE, FALSE,
SCALE_NONE, 0, INT, 1, SECINT);
sql_create_func(sa, "second", "mtime", "seconds", FALSE, FALSE,
SCALE_NONE, 0, INT, 1, SECINT);
- sql_create_func(sa, "next_value_for", "sql", "next_value", TRUE, TRUE,
SCALE_NONE, 0, LNG, 2, STR, STR);
- sql_create_func(sa, "get_value_for", "sql", "get_value", TRUE, FALSE,
SCALE_NONE, 0, LNG, 2, STR, STR);
- sql_create_func(sa, "restart", "sql", "restart", TRUE, FALSE,
SCALE_NONE, 0, LNG, 3, STR, STR, LNG);
for (t = strings; t < numerical; t++) {
+ sql_create_func(sa, "next_value_for", "sql", "next_value",
TRUE, TRUE, SCALE_NONE, 0, LNG, 2, *t, *t);
+ sql_create_func(sa, "get_value_for", "sql", "get_value", TRUE,
FALSE, SCALE_NONE, 0, LNG, 2, *t, *t);
+ sql_create_func(sa, "restart", "sql", "restart", TRUE, FALSE,
SCALE_NONE, 0, LNG, 3, *t, *t, LNG);
+
sql_create_func(sa, "index", "calc", "index", TRUE, FALSE,
SCALE_NONE, 0, BTE, 2, *t, BIT);
sql_create_func(sa, "index", "calc", "index", TRUE, FALSE,
SCALE_NONE, 0, SHT, 2, *t, BIT);
sql_create_func(sa, "index", "calc", "index", TRUE, FALSE,
SCALE_NONE, 0, INT, 2, *t, BIT);
diff --git a/sql/test/analytics/Tests/analytics17.stable.out
b/sql/test/analytics/Tests/analytics17.stable.out
--- a/sql/test/analytics/Tests/analytics17.stable.out
+++ b/sql/test/analytics/Tests/analytics17.stable.out
@@ -222,9 +222,9 @@ stdout of test 'analytics17` in director
# listagg(a) over (order by a),
# listagg(a, min(b)) over (),
# listagg(a, min(b)) over (partition by max(b)) from testmore group by a;
-% sys.testmore, sys.%7, sys.%16, sys.%26, sys.%37 #
table_name
-% a, %7, %16, %26, %37 # name
-% int, varchar, varchar, varchar, varchar # type
+% sys.testmore, sys.%7, sys.%16, sys.%26, sys.%36 #
table_name
+% a, %7, %16, %26, %36 # name
+% int, clob, clob, clob, clob # type
% 1, 5, 5, 9, 1 # length
[ 3, "3,2,1", "1,2,3", "3harder21", "3" ]
[ 2, "3,2,1", "1,2", "3harder21", "2" ]
diff --git a/sql/test/group-concat/Tests/groupconcat05.stable.out
b/sql/test/group-concat/Tests/groupconcat05.stable.out
--- a/sql/test/group-concat/Tests/groupconcat05.stable.out
+++ b/sql/test/group-concat/Tests/groupconcat05.stable.out
@@ -157,14 +157,14 @@ stdout of test 'groupconcat05` in direct
[ "😀😁😀😁😀😁😀" ]
[ "😀😁😀😁😀😁😀" ]
#select group_concat(null) || 'a';
-% .%4 # table_name
-% %4 # name
+% .%3 # table_name
+% %3 # name
% varchar # type
% 0 # length
[ NULL ]
#select group_concat(null) || 'a' from testmore;
-% .%3 # table_name
-% %3 # name
+% .%2 # table_name
+% %2 # name
% varchar # type
% 0 # length
[ NULL ]
@@ -251,7 +251,7 @@ stdout of test 'groupconcat05` in direct
#select listagg(a) from testmore;
% sys.%1 # table_name
% %1 # name
-% varchar # type
+% clob # type
% 23 # length
[ "1,1,1,2,3,2,3,2,1,3,2,1" ]
#select listagg(b) from testmore;
@@ -263,7 +263,7 @@ stdout of test 'groupconcat05` in direct
#select listagg(a, a) from testmore;
% sys.%1 # table_name
% %1 # name
-% varchar # type
+% clob # type
% 23 # length
[ "11111223322332211332211" ]
#select listagg(b, b) from testmore;
@@ -275,7 +275,7 @@ stdout of test 'groupconcat05` in direct
#select listagg(a, b) from testmore;
% sys.%1 # table_name
% %1 # name
-% varchar # type
+% clob # type
% 48 # length
[ "1testing1todo1lets2get3harder2even3more21even321" ]
#select listagg(b, a) from testmore;
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
@@ -803,8 +803,14 @@ stdout of test 'systemfunctions` in dire
[ "sys", "get_type", 1, "int", "" ]
[ "sys", "get_type", 2, "int", "" ]
[ "sys", "get_value_for", 0, "bigint", "get_value"
]
+[ "sys", "get_value_for", 1, "char", "" ]
+[ "sys", "get_value_for", 2, "char", "" ]
+[ "sys", "get_value_for", 0, "bigint", "get_value"
]
[ "sys", "get_value_for", 1, "varchar", "" ]
[ "sys", "get_value_for", 2, "varchar", "" ]
+[ "sys", "get_value_for", 0, "bigint", "get_value"
]
+[ "sys", "get_value_for", 1, "clob", "" ]
+[ "sys", "get_value_for", 2, "clob", "" ]
[ "sys", "getanchor", 0, "clob", "create function getanchor(
theurl url ) returns string\nexternal name url.\"getAnchor\";" ]
[ "sys", "getanchor", 1, "url", "" ]
[ "sys", "getbasename", 0, "clob", "create function
getbasename(theurl url) returns string\nexternal name url.\"getBasename\";" ]
@@ -1177,16 +1183,36 @@ stdout of test 'systemfunctions` in dire
[ "sys", "like", 1, "clob", "" ]
[ "sys", "like", 2, "clob", "" ]
[ "sys", "like", 3, "clob", "" ]
+[ "sys", "listagg", 0, "char", "str_group_concat" ]
+[ "sys", "listagg", 1, "char", "" ]
+[ "sys", "listagg", 0, "char", "str_group_concat" ]
+[ "sys", "listagg", 1, "char", "" ]
+[ "sys", "listagg", 2, "char", "" ]
[ "sys", "listagg", 0, "varchar", "str_group_concat"
]
[ "sys", "listagg", 1, "varchar", "" ]
[ "sys", "listagg", 0, "varchar", "str_group_concat"
]
[ "sys", "listagg", 1, "varchar", "" ]
[ "sys", "listagg", 2, "varchar", "" ]
+[ "sys", "listagg", 0, "clob", "str_group_concat" ]
+[ "sys", "listagg", 1, "clob", "" ]
+[ "sys", "listagg", 0, "clob", "str_group_concat" ]
+[ "sys", "listagg", 1, "clob", "" ]
+[ "sys", "listagg", 2, "clob", "" ]
+[ "sys", "listagg", 0, "char", "str_group_concat" ]
+[ "sys", "listagg", 1, "char", "" ]
+[ "sys", "listagg", 0, "char", "str_group_concat" ]
+[ "sys", "listagg", 1, "char", "" ]
+[ "sys", "listagg", 2, "char", "" ]
[ "sys", "listagg", 0, "varchar", "str_group_concat"
]
[ "sys", "listagg", 1, "varchar", "" ]
[ "sys", "listagg", 0, "varchar", "str_group_concat"
]
[ "sys", "listagg", 1, "varchar", "" ]
[ "sys", "listagg", 2, "varchar", "" ]
+[ "sys", "listagg", 0, "clob", "str_group_concat" ]
+[ "sys", "listagg", 1, "clob", "" ]
+[ "sys", "listagg", 0, "clob", "str_group_concat" ]
+[ "sys", "listagg", 1, "clob", "" ]
+[ "sys", "listagg", 2, "clob", "" ]
[ "sys", "listdir", 0, "clob", "create procedure
listdir(dirname string) external name fits.listdir;" ]
[ "sys", "listdirpat", 0, "clob", "create procedure
listdirpat(dirname string,pat string) external name fits.listdirpattern;" ]
[ "sys", "listdirpat", 1, "clob", "" ]
@@ -1494,8 +1520,14 @@ stdout of test 'systemfunctions` in dire
[ "sys", "newurl", 2, "clob", "" ]
[ "sys", "newurl", 3, "clob", "" ]
[ "sys", "next_value_for", 0, "bigint", "next_value"
]
+[ "sys", "next_value_for", 1, "char", "" ]
+[ "sys", "next_value_for", 2, "char", "" ]
+[ "sys", "next_value_for", 0, "bigint", "next_value"
]
[ "sys", "next_value_for", 1, "varchar", "" ]
[ "sys", "next_value_for", 2, "varchar", "" ]
+[ "sys", "next_value_for", 0, "bigint", "next_value"
]
+[ "sys", "next_value_for", 1, "clob", "" ]
+[ "sys", "next_value_for", 2, "clob", "" ]
[ "sys", "not", 0, "boolean", "not" ]
[ "sys", "not", 1, "boolean", "" ]
[ "sys", "not_exist", 0, "boolean", "not_exist" ]
@@ -1799,9 +1831,17 @@ stdout of test 'systemfunctions` in dire
[ "sys", "replace", 2, "clob", "" ]
[ "sys", "replace", 3, "clob", "" ]
[ "sys", "restart", 0, "bigint", "restart" ]
+[ "sys", "restart", 1, "char", "" ]
+[ "sys", "restart", 2, "char", "" ]
+[ "sys", "restart", 3, "bigint", "" ]
+[ "sys", "restart", 0, "bigint", "restart" ]
[ "sys", "restart", 1, "varchar", "" ]
[ "sys", "restart", 2, "varchar", "" ]
[ "sys", "restart", 3, "bigint", "" ]
+[ "sys", "restart", 0, "bigint", "restart" ]
+[ "sys", "restart", 1, "clob", "" ]
+[ "sys", "restart", 2, "clob", "" ]
+[ "sys", "restart", 3, "bigint", "" ]
[ "sys", "resume", 0, "bigint", "create procedure
sys.resume(tag bigint)\nexternal name sysmon.resume;" ]
[ "sys", "reuse", 0, "clob", "create procedure reuse(sys
string, tab string)\nexternal name sql.reuse;" ]
[ "sys", "reuse", 1, "clob", "" ]
diff --git a/sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
b/sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
--- a/sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
+++ b/sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
@@ -868,8 +868,14 @@ stdout of test 'systemfunctions` in dire
[ "sys", "get_type", 1, "int", "" ]
[ "sys", "get_type", 2, "int", "" ]
[ "sys", "get_value_for", 0, "bigint", "get_value"
]
+[ "sys", "get_value_for", 1, "char", "" ]
+[ "sys", "get_value_for", 2, "char", "" ]
+[ "sys", "get_value_for", 0, "bigint", "get_value"
]
[ "sys", "get_value_for", 1, "varchar", "" ]
[ "sys", "get_value_for", 2, "varchar", "" ]
+[ "sys", "get_value_for", 0, "bigint", "get_value"
]
+[ "sys", "get_value_for", 1, "clob", "" ]
+[ "sys", "get_value_for", 2, "clob", "" ]
[ "sys", "getanchor", 0, "clob", "create function getanchor(
theurl url ) returns string\nexternal name url.\"getAnchor\";" ]
[ "sys", "getanchor", 1, "url", "" ]
[ "sys", "getbasename", 0, "clob", "create function
getbasename(theurl url) returns string\nexternal name url.\"getBasename\";" ]
@@ -1272,16 +1278,36 @@ stdout of test 'systemfunctions` in dire
[ "sys", "like", 1, "clob", "" ]
[ "sys", "like", 2, "clob", "" ]
[ "sys", "like", 3, "clob", "" ]
+[ "sys", "listagg", 0, "char", "str_group_concat" ]
+[ "sys", "listagg", 1, "char", "" ]
+[ "sys", "listagg", 0, "char", "str_group_concat" ]
+[ "sys", "listagg", 1, "char", "" ]
+[ "sys", "listagg", 2, "char", "" ]
[ "sys", "listagg", 0, "varchar", "str_group_concat"
]
[ "sys", "listagg", 1, "varchar", "" ]
[ "sys", "listagg", 0, "varchar", "str_group_concat"
]
[ "sys", "listagg", 1, "varchar", "" ]
[ "sys", "listagg", 2, "varchar", "" ]
+[ "sys", "listagg", 0, "clob", "str_group_concat" ]
+[ "sys", "listagg", 1, "clob", "" ]
+[ "sys", "listagg", 0, "clob", "str_group_concat" ]
+[ "sys", "listagg", 1, "clob", "" ]
+[ "sys", "listagg", 2, "clob", "" ]
+[ "sys", "listagg", 0, "char", "str_group_concat" ]
+[ "sys", "listagg", 1, "char", "" ]
+[ "sys", "listagg", 0, "char", "str_group_concat" ]
+[ "sys", "listagg", 1, "char", "" ]
+[ "sys", "listagg", 2, "char", "" ]
[ "sys", "listagg", 0, "varchar", "str_group_concat"
]
[ "sys", "listagg", 1, "varchar", "" ]
[ "sys", "listagg", 0, "varchar", "str_group_concat"
]
[ "sys", "listagg", 1, "varchar", "" ]
[ "sys", "listagg", 2, "varchar", "" ]
+[ "sys", "listagg", 0, "clob", "str_group_concat" ]
+[ "sys", "listagg", 1, "clob", "" ]
+[ "sys", "listagg", 0, "clob", "str_group_concat" ]
+[ "sys", "listagg", 1, "clob", "" ]
+[ "sys", "listagg", 2, "clob", "" ]
[ "sys", "listdir", 0, "clob", "create procedure
listdir(dirname string) external name fits.listdir;" ]
[ "sys", "listdirpat", 0, "clob", "create procedure
listdirpat(dirname string,pat string) external name fits.listdirpattern;" ]
[ "sys", "listdirpat", 1, "clob", "" ]
@@ -1599,8 +1625,14 @@ stdout of test 'systemfunctions` in dire
[ "sys", "newurl", 2, "clob", "" ]
[ "sys", "newurl", 3, "clob", "" ]
[ "sys", "next_value_for", 0, "bigint", "next_value"
]
+[ "sys", "next_value_for", 1, "char", "" ]
+[ "sys", "next_value_for", 2, "char", "" ]
+[ "sys", "next_value_for", 0, "bigint", "next_value"
]
[ "sys", "next_value_for", 1, "varchar", "" ]
[ "sys", "next_value_for", 2, "varchar", "" ]
+[ "sys", "next_value_for", 0, "bigint", "next_value"
]
+[ "sys", "next_value_for", 1, "clob", "" ]
+[ "sys", "next_value_for", 2, "clob", "" ]
[ "sys", "not", 0, "boolean", "not" ]
[ "sys", "not", 1, "boolean", "" ]
[ "sys", "not_exist", 0, "boolean", "not_exist" ]
@@ -1922,9 +1954,17 @@ stdout of test 'systemfunctions` in dire
[ "sys", "replace", 2, "clob", "" ]
[ "sys", "replace", 3, "clob", "" ]
[ "sys", "restart", 0, "bigint", "restart" ]
+[ "sys", "restart", 1, "char", "" ]
+[ "sys", "restart", 2, "char", "" ]
+[ "sys", "restart", 3, "bigint", "" ]
+[ "sys", "restart", 0, "bigint", "restart" ]
[ "sys", "restart", 1, "varchar", "" ]
[ "sys", "restart", 2, "varchar", "" ]
[ "sys", "restart", 3, "bigint", "" ]
+[ "sys", "restart", 0, "bigint", "restart" ]
+[ "sys", "restart", 1, "clob", "" ]
+[ "sys", "restart", 2, "clob", "" ]
+[ "sys", "restart", 3, "bigint", "" ]
[ "sys", "resume", 0, "bigint", "create procedure
sys.resume(tag bigint)\nexternal name sysmon.resume;" ]
[ "sys", "reuse", 0, "clob", "create procedure reuse(sys
string, tab string)\nexternal name sql.reuse;" ]
[ "sys", "reuse", 1, "clob", "" ]
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list