Changeset: d975e395011b for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/d975e395011b
Modified Files:
        sql/backends/monet5/sql_upgrades.c
        
sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        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.int128
        sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        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.int128
        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/testdb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        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.int128
        sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128
Branch: clean_parser
Log Message:

Add upgrade code for sys.dayname and sys.monthname functions.


diffs (truncated from 812 to 300 lines):

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
@@ -4472,6 +4472,8 @@ sql_update_default(Client c, mvc *sql, s
                printf("Running database upgrade commands:\n%s\n", query);
                fflush(stdout);
                err = SQLstatementIntern(c, query, "update", true, false, NULL);
+               if (err)
+                       return err;
        }
 
        if ((err = SQLstatementIntern(c, "select id from sys.functions where 
name = 'quantile' and schema_id = 2000 and contains(func, 'ordered');\n", 
"update", true, false, &output)) == MAL_SUCCEED) {
@@ -4713,7 +4715,26 @@ sql_update_default(Client c, mvc *sql, s
                        err = SQLstatementIntern(c, query, "update", true, 
false, NULL);
                }
                res_table_destroy(output);
+               if (err)
+                       return err;
        }
+
+       sql_find_subtype(&tp, "date", 0, 0);
+       if (!sql_bind_func(sql, s->base.name, "dayname", &tp, NULL, F_FUNC, 
true, true)) {
+               sql->session->status = 0; /* if the function was not found 
clean the error */
+               sql->errstr[0] = '\0';
+               const char query[] = "create function dayname(d date) returns 
varchar(10) return date_to_str(d, '%A');\n"
+                       "create function monthname(d date) returns varchar(10) 
return date_to_str(d, '%B');\n"
+                       "grant execute on function dayname(date) to public;\n"
+                       "grant execute on function monthname(date) to public;\n"
+                       "update sys.functions set system = true where system <> 
true and name in ('dayname', 'monthname') and schema_id = 2000 and type = 
(select function_type_id from sys.function_types where function_type_name = 
'Scalar function');\n";
+               printf("Running database upgrade commands:\n%s\n", query);
+               fflush(stdout);
+               err = SQLstatementIntern(c, query, "update", true, false, NULL);
+               if (err)
+                       return err;
+       }
+
        return err;
 }
 
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
@@ -772,6 +772,13 @@ GRANT SELECT ON TABLE INFORMATION_SCHEMA
 update sys._tables set system = true where not system and schema_id = (select 
id from sys.schemas where name = 'information_schema') and name = 'parameters';
 
 Running database upgrade commands:
+create function dayname(d date) returns varchar(10) return date_to_str(d, 
'%A');
+create function monthname(d date) returns varchar(10) return date_to_str(d, 
'%B');
+grant execute on function dayname(date) to public;
+grant execute on function monthname(date) to public;
+update sys.functions set system = true where system <> true and name in 
('dayname', 'monthname') and schema_id = 2000 and type = (select 
function_type_id from sys.function_types where function_type_name = 'Scalar 
function');
+
+Running database upgrade commands:
 drop view sys.geometry_columns;
 create view sys.geometry_columns as
  select cast(null as varchar(1)) as f_table_catalog,
diff --git 
a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128
@@ -838,6 +838,13 @@ GRANT SELECT ON TABLE INFORMATION_SCHEMA
 update sys._tables set system = true where not system and schema_id = (select 
id from sys.schemas where name = 'information_schema') and name = 'parameters';
 
 Running database upgrade commands:
+create function dayname(d date) returns varchar(10) return date_to_str(d, 
'%A');
+create function monthname(d date) returns varchar(10) return date_to_str(d, 
'%B');
+grant execute on function dayname(date) to public;
+grant execute on function monthname(date) to public;
+update sys.functions set system = true where system <> true and name in 
('dayname', 'monthname') and schema_id = 2000 and type = (select 
function_type_id from sys.function_types where function_type_name = 'Scalar 
function');
+
+Running database upgrade commands:
 drop view sys.geometry_columns;
 create view sys.geometry_columns as
  select cast(null as varchar(1)) as f_table_catalog,
diff --git 
a/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128
@@ -772,6 +772,13 @@ GRANT SELECT ON TABLE INFORMATION_SCHEMA
 update sys._tables set system = true where not system and schema_id = (select 
id from sys.schemas where name = 'information_schema') and name = 'parameters';
 
 Running database upgrade commands:
+create function dayname(d date) returns varchar(10) return date_to_str(d, 
'%A');
+create function monthname(d date) returns varchar(10) return date_to_str(d, 
'%B');
+grant execute on function dayname(date) to public;
+grant execute on function monthname(date) to public;
+update sys.functions set system = true where system <> true and name in 
('dayname', 'monthname') and schema_id = 2000 and type = (select 
function_type_id from sys.function_types where function_type_name = 'Scalar 
function');
+
+Running database upgrade commands:
 drop view sys.geometry_columns;
 create view sys.geometry_columns as
  select cast(null as varchar(1)) as f_table_catalog,
diff --git a/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128
@@ -838,6 +838,13 @@ GRANT SELECT ON TABLE INFORMATION_SCHEMA
 update sys._tables set system = true where not system and schema_id = (select 
id from sys.schemas where name = 'information_schema') and name = 'parameters';
 
 Running database upgrade commands:
+create function dayname(d date) returns varchar(10) return date_to_str(d, 
'%A');
+create function monthname(d date) returns varchar(10) return date_to_str(d, 
'%B');
+grant execute on function dayname(date) to public;
+grant execute on function monthname(date) to public;
+update sys.functions set system = true where system <> true and name in 
('dayname', 'monthname') and schema_id = 2000 and type = (select 
function_type_id from sys.function_types where function_type_name = 'Scalar 
function');
+
+Running database upgrade commands:
 drop view sys.geometry_columns;
 create view sys.geometry_columns as
  select cast(null as varchar(1)) as f_table_catalog,
diff --git a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
@@ -266,6 +266,13 @@ GRANT SELECT ON TABLE INFORMATION_SCHEMA
 update sys._tables set system = true where not system and schema_id = (select 
id from sys.schemas where name = 'information_schema') and name = 'parameters';
 
 Running database upgrade commands:
+create function dayname(d date) returns varchar(10) return date_to_str(d, 
'%A');
+create function monthname(d date) returns varchar(10) return date_to_str(d, 
'%B');
+grant execute on function dayname(date) to public;
+grant execute on function monthname(date) to public;
+update sys.functions set system = true where system <> true and name in 
('dayname', 'monthname') and schema_id = 2000 and type = (select 
function_type_id from sys.function_types where function_type_name = 'Scalar 
function');
+
+Running database upgrade commands:
 drop view sys.geometry_columns;
 create view sys.geometry_columns as
  select cast(null as varchar(1)) as f_table_catalog,
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
@@ -349,6 +349,13 @@ GRANT SELECT ON TABLE INFORMATION_SCHEMA
 update sys._tables set system = true where not system and schema_id = (select 
id from sys.schemas where name = 'information_schema') and name = 'parameters';
 
 Running database upgrade commands:
+create function dayname(d date) returns varchar(10) return date_to_str(d, 
'%A');
+create function monthname(d date) returns varchar(10) return date_to_str(d, 
'%B');
+grant execute on function dayname(date) to public;
+grant execute on function monthname(date) to public;
+update sys.functions set system = true where system <> true and name in 
('dayname', 'monthname') and schema_id = 2000 and type = (select 
function_type_id from sys.function_types where function_type_name = 'Scalar 
function');
+
+Running database upgrade commands:
 drop view sys.geometry_columns;
 create view sys.geometry_columns as
  select cast(null as varchar(1)) as f_table_catalog,
diff --git a/sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
@@ -266,6 +266,13 @@ GRANT SELECT ON TABLE INFORMATION_SCHEMA
 update sys._tables set system = true where not system and schema_id = (select 
id from sys.schemas where name = 'information_schema') and name = 'parameters';
 
 Running database upgrade commands:
+create function dayname(d date) returns varchar(10) return date_to_str(d, 
'%A');
+create function monthname(d date) returns varchar(10) return date_to_str(d, 
'%B');
+grant execute on function dayname(date) to public;
+grant execute on function monthname(date) to public;
+update sys.functions set system = true where system <> true and name in 
('dayname', 'monthname') and schema_id = 2000 and type = (select 
function_type_id from sys.function_types where function_type_name = 'Scalar 
function');
+
+Running database upgrade commands:
 drop view sys.geometry_columns;
 create view sys.geometry_columns as
  select cast(null as varchar(1)) as f_table_catalog,
diff --git a/sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
@@ -349,6 +349,13 @@ GRANT SELECT ON TABLE INFORMATION_SCHEMA
 update sys._tables set system = true where not system and schema_id = (select 
id from sys.schemas where name = 'information_schema') and name = 'parameters';
 
 Running database upgrade commands:
+create function dayname(d date) returns varchar(10) return date_to_str(d, 
'%A');
+create function monthname(d date) returns varchar(10) return date_to_str(d, 
'%B');
+grant execute on function dayname(date) to public;
+grant execute on function monthname(date) to public;
+update sys.functions set system = true where system <> true and name in 
('dayname', 'monthname') and schema_id = 2000 and type = (select 
function_type_id from sys.function_types where function_type_name = 'Scalar 
function');
+
+Running database upgrade commands:
 drop view sys.geometry_columns;
 create view sys.geometry_columns as
  select cast(null as varchar(1)) as f_table_catalog,
diff --git a/sql/test/emptydb/Tests/check.stable.out 
b/sql/test/emptydb/Tests/check.stable.out
--- a/sql/test/emptydb/Tests/check.stable.out
+++ b/sql/test/emptydb/Tests/check.stable.out
@@ -100,8 +100,8 @@ select 'duplicates in optimizers', count
 select 'duplicates in environment', count(*), name from sys.environment group 
by name having count(*) > 1;
 select 'duplicates in db_user_info', count(*), name from sys.db_user_info 
group by name having count(*) > 1;
 select 'duplicates in statistics', count(*), column_id from sys.statistics 
group by column_id having count(*) > 1;
-select 'duplicates in storage()', count(*), schema, table, column from 
sys."storage"() group by schema, table, column having count(*) > 1;
-select 'duplicates in storagemodelinput', count(*), schema, table, column from 
sys.storagemodelinput group by schema, table, column having count(*) > 1;
+select 'duplicates in storage()', count(*), schema, "table", "column" from 
sys."storage"() group by schema, "table", "column" having count(*) > 1;
+select 'duplicates in storagemodelinput', count(*), schema, "table", "column" 
from sys.storagemodelinput group by schema, "table", "column" having count(*) > 
1;
 select 'duplicates in rejects', count(*), rowid from sys.rejects group by 
rowid having count(*) > 1;
 select 'duplicates in keywords', count(*), keyword from sys.keywords group by 
keyword having count(*) > 1;
 select 'duplicates in table_types', count(*), table_type_id from 
sys.table_types group by table_type_id having count(*) > 1;
@@ -214,32 +214,32 @@ select 'missing reference in sessions op
 select 'missing reference in statistics column_id', column_id, * from 
sys.statistics where (column_id) not in (select id from (SELECT id FROM 
sys._columns UNION ALL SELECT id FROM tmp._columns) as c);
 select 'missing reference in statistics type', type, * from sys.statistics 
where (type) not in (select sqlname from sys.types);
 select 'missing reference in storage() schema', schema, * from sys.storage() 
where (schema) not in (select name from sys.schemas);
-select 'missing reference in storage() table', table, * from sys.storage() 
where (table) not in (select name from (SELECT name FROM sys._tables UNION ALL 
SELECT name FROM tmp._tables) as t);
-select 'missing reference in storage() schema, table', schema, table, * from 
sys.storage() where (schema, table) not in (select sname, tname from (SELECT 
sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN sys.tables AS 
tbl ON sch.id = tbl.schema_id) as t);
-select 'missing reference in storage() column', column, * from sys.storage() 
where (column) not in (select name from (SELECT name FROM sys._columns UNION 
ALL SELECT name FROM tmp._columns UNION ALL SELECT name FROM sys.keys UNION ALL 
SELECT name FROM tmp.keys UNION ALL SELECT name FROM sys.idxs UNION ALL SELECT 
name FROM tmp.idxs) as c);
+select 'missing reference in storage() table', "table", * from sys.storage() 
where ("table") not in (select name from (SELECT name FROM sys._tables UNION 
ALL SELECT name FROM tmp._tables) as t);
+select 'missing reference in storage() schema, table', schema, "table", * from 
sys.storage() where (schema, "table") not in (select sname, tname from (SELECT 
sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN sys.tables AS 
tbl ON sch.id = tbl.schema_id) as t);
+select 'missing reference in storage() column', "column", * from sys.storage() 
where ("column") not in (select name from (SELECT name FROM sys._columns UNION 
ALL SELECT name FROM tmp._columns UNION ALL SELECT name FROM sys.keys UNION ALL 
SELECT name FROM tmp.keys UNION ALL SELECT name FROM sys.idxs UNION ALL SELECT 
name FROM tmp.idxs) as c);
 select 'missing reference in storage() type', type, * from sys.storage() where 
(type) not in (select sqlname from sys.types);
 select 'missing reference in storage schema', schema, * from sys.storage where 
(schema) not in (select name from sys.schemas);
-select 'missing reference in storage table', table, * from sys.storage where 
(table) not in (select name from (SELECT name FROM sys._tables UNION ALL SELECT 
name FROM tmp._tables) as t);
-select 'missing reference in storage schema, table', schema, table, * from 
sys.storage where (schema, table) not in (select sname, tname from (SELECT 
sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN sys.tables AS 
tbl ON sch.id = tbl.schema_id) as t);
-select 'missing reference in storage column', column, * from sys.storage where 
(column) not in (select name from (SELECT name FROM sys._columns UNION ALL 
SELECT name FROM tmp._columns UNION ALL SELECT name FROM sys.keys UNION ALL 
SELECT name FROM tmp.keys UNION ALL SELECT name FROM sys.idxs UNION ALL SELECT 
name FROM tmp.idxs) as c);
+select 'missing reference in storage table', "table", * from sys.storage where 
("table") not in (select name from (SELECT name FROM sys._tables UNION ALL 
SELECT name FROM tmp._tables) as t);
+select 'missing reference in storage schema, table', schema, "table", * from 
sys.storage where (schema, "table") not in (select sname, tname from (SELECT 
sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN sys.tables AS 
tbl ON sch.id = tbl.schema_id) as t);
+select 'missing reference in storage column', "column", * from sys.storage 
where ("column") not in (select name from (SELECT name FROM sys._columns UNION 
ALL SELECT name FROM tmp._columns UNION ALL SELECT name FROM sys.keys UNION ALL 
SELECT name FROM tmp.keys UNION ALL SELECT name FROM sys.idxs UNION ALL SELECT 
name FROM tmp.idxs) as c);
 select 'missing reference in storage type', type, * from sys.storage where 
(type) not in (select sqlname from sys.types);
 select 'missing reference in storagemodel schema', schema, * from 
sys.storagemodel where (schema) not in (select name from sys.schemas);
-select 'missing reference in storagemodel table', table, * from 
sys.storagemodel where (table) not in (select name from (SELECT name FROM 
sys._tables UNION ALL SELECT name FROM tmp._tables) as t);
-select 'missing reference in storagemodel schema, table', schema, table, * 
from sys.storagemodel where (schema, table) not in (select sname, tname from 
(SELECT sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN 
sys.tables AS tbl ON sch.id = tbl.schema_id) as t);
-select 'missing reference in storagemodel column', column, * from 
sys.storagemodel where (column) not in (select name from (SELECT name FROM 
sys._columns UNION ALL SELECT name FROM tmp._columns UNION ALL SELECT name FROM 
sys.keys UNION ALL SELECT name FROM tmp.keys UNION ALL SELECT name FROM 
sys.idxs UNION ALL SELECT name FROM tmp.idxs) as c);
+select 'missing reference in storagemodel table', "table", * from 
sys.storagemodel where ("table") not in (select name from (SELECT name FROM 
sys._tables UNION ALL SELECT name FROM tmp._tables) as t);
+select 'missing reference in storagemodel schema, table', schema, "table", * 
from sys.storagemodel where (schema, "table") not in (select sname, tname from 
(SELECT sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN 
sys.tables AS tbl ON sch.id = tbl.schema_id) as t);
+select 'missing reference in storagemodel column', "column", * from 
sys.storagemodel where ("column") not in (select name from (SELECT name FROM 
sys._columns UNION ALL SELECT name FROM tmp._columns UNION ALL SELECT name FROM 
sys.keys UNION ALL SELECT name FROM tmp.keys UNION ALL SELECT name FROM 
sys.idxs UNION ALL SELECT name FROM tmp.idxs) as c);
 select 'missing reference in storagemodel type', type, * from sys.storagemodel 
where (type) not in (select sqlname from sys.types);
 select 'missing reference in storagemodelinput schema', schema, * from 
sys.storagemodelinput where (schema) not in (select name from sys.schemas);
-select 'missing reference in storagemodelinput table', table, * from 
sys.storagemodelinput where (table) not in (select name from (SELECT name FROM 
sys._tables UNION ALL SELECT name FROM tmp._tables) as t);
-select 'missing reference in storagemodelinput schema, table', schema, table, 
* from sys.storagemodelinput where (schema, table) not in (select sname, tname 
from (SELECT sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN 
sys.tables AS tbl ON sch.id = tbl.schema_id) as t);
-select 'missing reference in storagemodelinput column', column, * from 
sys.storagemodelinput where (column) not in (select name from (SELECT name FROM 
sys._columns UNION ALL SELECT name FROM tmp._columns UNION ALL SELECT name FROM 
sys.keys UNION ALL SELECT name FROM tmp.keys UNION ALL SELECT name FROM 
sys.idxs UNION ALL SELECT name FROM tmp.idxs) as c);
+select 'missing reference in storagemodelinput table', "table", * from 
sys.storagemodelinput where ("table") not in (select name from (SELECT name 
FROM sys._tables UNION ALL SELECT name FROM tmp._tables) as t);
+select 'missing reference in storagemodelinput schema, table', schema, 
"table", * from sys.storagemodelinput where (schema, "table") not in (select 
sname, tname from (SELECT sch.name as sname, tbl.name as tname FROM sys.schemas 
AS sch JOIN sys.tables AS tbl ON sch.id = tbl.schema_id) as t);
+select 'missing reference in storagemodelinput column', "column", * from 
sys.storagemodelinput where ("column") not in (select name from (SELECT name 
FROM sys._columns UNION ALL SELECT name FROM tmp._columns UNION ALL SELECT name 
FROM sys.keys UNION ALL SELECT name FROM tmp.keys UNION ALL SELECT name FROM 
sys.idxs UNION ALL SELECT name FROM tmp.idxs) as c);
 select 'missing reference in storagemodelinput type', type, * from 
sys.storagemodelinput where (type) not in (select sqlname from sys.types);
 select 'missing reference in tablestoragemodel schema', schema, * from 
sys.tablestoragemodel where (schema) not in (select name from sys.schemas);
-select 'missing reference in tablestoragemodel table', table, * from 
sys.tablestoragemodel where (table) not in (select name from (SELECT name FROM 
sys._tables UNION ALL SELECT name FROM tmp._tables) as t);
-select 'missing reference in tablestoragemodel schema, table', schema, table, 
* from sys.tablestoragemodel where (schema, table) not in (select sname, tname 
from (SELECT sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN 
sys.tables AS tbl ON sch.id = tbl.schema_id) as t);
+select 'missing reference in tablestoragemodel table', "table", * from 
sys.tablestoragemodel where ("table") not in (select name from (SELECT name 
FROM sys._tables UNION ALL SELECT name FROM tmp._tables) as t);
+select 'missing reference in tablestoragemodel schema, table', schema, 
"table", * from sys.tablestoragemodel where (schema, "table") not in (select 
sname, tname from (SELECT sch.name as sname, tbl.name as tname FROM sys.schemas 
AS sch JOIN sys.tables AS tbl ON sch.id = tbl.schema_id) as t);
 select 'missing reference in schemastorage schema', schema, * from 
sys.schemastorage where (schema) not in (select name from sys.schemas);
 select 'missing reference in tablestorage schema', schema, * from 
sys.tablestorage where (schema) not in (select name from sys.schemas);
-select 'missing reference in tablestorage table', table, * from 
sys.tablestorage where (table) not in (select name from (SELECT name FROM 
sys._tables UNION ALL SELECT name FROM tmp._tables) as t);
-select 'missing reference in tablestorage schema, table', schema, table, * 
from sys.tablestorage where (schema, table) not in (select sname, tname from 
(SELECT sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN 
sys.tables AS tbl ON sch.id = tbl.schema_id) as t);
+select 'missing reference in tablestorage table', "table", * from 
sys.tablestorage where ("table") not in (select name from (SELECT name FROM 
sys._tables UNION ALL SELECT name FROM tmp._tables) as t);
+select 'missing reference in tablestorage schema, table', schema, "table", * 
from sys.tablestorage where (schema, "table") not in (select sname, tname from 
(SELECT sch.name as sname, tbl.name as tname FROM sys.schemas AS sch JOIN 
sys.tables AS tbl ON sch.id = tbl.schema_id) as t);
 select 'missing reference in table_partitions table_id', table_id, * from 
sys.table_partitions where (table_id) not in (select id from sys._tables);
 select 'missing reference in table_partitions column_id', column_id, * from 
sys.table_partitions WHERE column_id IS NOT NULL AND  (column_id) not in 
(select id from sys._columns);
 select 'missing reference in range_partitions table_id', table_id, * from 
sys.range_partitions where (table_id) not in (select id from sys._tables);
@@ -353,8 +353,8 @@ select 'null in statistics.nils', nils, 
 select 'null in statistics.sorted', sorted, * from sys.statistics where sorted 
is null;
 select 'null in statistics.revsorted', revsorted, * from sys.statistics where 
revsorted is null;
 select 'null in storage().schema', schema, * from sys."storage"() where schema 
is null;
-select 'null in storage().table', table, * from sys."storage"() where table is 
null;
-select 'null in storage().column', column, * from sys."storage"() where column 
is null;
+select 'null in storage().table', "table", * from sys."storage"() where 
"table" is null;
+select 'null in storage().column', "column", * from sys."storage"() where 
"column" is null;
 select 'null in storage().type', type, * from sys."storage"() where type is 
null;
 select 'null in storage().mode', mode, * from sys."storage"() where mode is 
null;
 select 'null in storage().location', location, * from sys."storage"() where 
location is null;
@@ -367,8 +367,8 @@ select 'null in storage().phash', phash,
 select 'null in storage().imprints', imprints, * from sys."storage"() where 
imprints is null;
 select 'null in storage().orderidx', orderidx, * from sys."storage"() where 
orderidx is null;
 select 'null in storagemodelinput.schema', schema, * from 
sys.storagemodelinput where schema is null;
-select 'null in storagemodelinput.table', table, * from sys.storagemodelinput 
where table is null;
-select 'null in storagemodelinput.column', column, * from 
sys.storagemodelinput where column is null;
+select 'null in storagemodelinput.table', "table", * from 
sys.storagemodelinput where "table" is null;
+select 'null in storagemodelinput.column', "column", * from 
sys.storagemodelinput where "column" is null;
 select 'null in storagemodelinput.type', type, * from sys.storagemodelinput 
where type is null;
 select 'null in storagemodelinput.typewidth', typewidth, * from 
sys.storagemodelinput where typewidth is null;
 select 'null in storagemodelinput.count', count, * from sys.storagemodelinput 
where count is null;
@@ -1916,6 +1916,7 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "day",  "SYSTEM",       "day",  "mtime",        
"Internal C",   "Scalar function",      false,  false,  false,  false,  NULL,   
"res_0",        "bigint",       63,     0,      "out",  "arg_1",        
"sec_interval", 13,     0,      "in",   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "day",  "SYSTEM",       "day",  "mtime",        
"Internal C",   "Scalar function",      false,  false,  false,  false,  NULL,   
"res_0",        "tinyint",      7,      0,      "out",  "arg_1",        "date", 
0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "day",  "SYSTEM",       "day",  "mtime",        
"Internal C",   "Scalar function",      false,  false,  false,  false,  NULL,   
"res_0",        "tinyint",      7,      0,      "out",  "arg_1",        
"timestamp",    7,      0,      "in",   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL    ]
+[ "sys.functions",     "sys",  "dayname",      "SYSTEM",       "create 
function dayname(d date) returns varchar(10) return date_to_str(d, '%A');",     
"sql",  "SQL",  "Scalar function",      false,  false,  false,  true,   NULL,   
"result",       "varchar",      10,     0,      "out",  "d",    "date", 0,      
0,      "in",   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL    ]
 [ "sys.functions",     "sys",  "dayofmonth",   "SYSTEM",       "day",  
"mtime",        "Internal C",   "Scalar function",      false,  false,  false,  
false,  NULL,   "res_0",        "tinyint",      7,      0,      "out",  
"arg_1",        "date", 0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "dayofweek",    "SYSTEM",       "dayofweek",    
"mtime",        "Internal C",   "Scalar function",      false,  false,  false,  
false,  NULL,   "res_0",        "tinyint",      7,      0,      "out",  
"arg_1",        "date", 0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "dayofyear",    "SYSTEM",       "dayofyear",    
"mtime",        "Internal C",   "Scalar function",      false,  false,  false,  
false,  NULL,   "res_0",        "smallint",     15,     0,      "out",  
"arg_1",        "date", 0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
@@ -2001,7 +2002,7 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "getquery",     "SYSTEM",       "create 
function getquery(theurl url) returns string external name url.\"getQuery\";",  
"url",  "MAL",  "Scalar function",      false,  false,  false,  true,   NULL,   
"result",       "varchar",      0,      0,      "out",  "theurl",       "url",  
0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "getroboturl",  "SYSTEM",       "create 
function getroboturl(theurl url) returns string external name 
url.\"getRobotURL\";",    "url",  "MAL",  "Scalar function",      false,  
false,  false,  true,   NULL,   "result",       "varchar",      0,      0,      
"out",  "theurl",       "url",  0,      0,      "in",   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "getuser",      "SYSTEM",       "create 
function getuser(theurl url) returns string external name url.\"getUser\";",    
"url",  "MAL",  "Scalar function",      false,  false,  false,  true,   NULL,   
"result",       "varchar",      0,      0,      "out",  "theurl",       "url",  
0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
-[ "sys.functions",     "sys",  "greatest",     "SYSTEM",       "max_no_nil",   
"calc", "Internal C",   "Scalar function",      false,  false,  false,  true,   
NULL,   "res_0",        "any",  0,      0,      "out",  "arg_1",        "any",  
0,      0,      "in",   "arg_2",        "any",  0,      0,      "in",   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
+[ "sys.functions",     "sys",  "greatest",     "SYSTEM",       "max_no_nil",   
"calc", "Internal C",   "Scalar function",      false,  false,  true,   true,   
NULL,   "res_0",        "any",  0,      0,      "out",  "arg_1",        "any",  
0,      0,      "in",   "arg_2",        "any",  0,      0,      "in",   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "group_concat", "SYSTEM",       "create 
aggregate sys.group_concat(str string) returns string with order external name 
\"aggr\".\"str_group_concat\";", "aggr", "MAL",  "Aggregate function",   false, 
 false,  false,  true,   NULL,   "result",       "varchar",      0,      0,     
 "out",  "str",  "varchar",      0,      0,      "in",   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "group_concat", "SYSTEM",       "create 
aggregate sys.group_concat(str string, sep string) returns string with order 
external name \"aggr\".\"str_group_concat\";",     "aggr", "MAL",  "Aggregate 
function",   false,  false,  false,  true,   NULL,   "result",       "varchar", 
     0,      0,      "out",  "str",  "varchar",      0,      0,      "in",   
"sep",  "varchar",      0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL    ]
 [ "sys.functions",     "sys",  "group_concat", "SYSTEM",       "create window 
sys.group_concat(str string) returns string external name 
\"sql\".\"str_group_concat\";",        "sql",  "MAL",  "Analytic function",    
false,  false,  false,  true,   NULL,   "result",       "varchar",      0,      
0,      "out",  "str",  "varchar",      0,      0,      "in",   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
@@ -2047,7 +2048,7 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "lead", "SYSTEM",       "lead", "sql",  
"Internal C",   "Analytic function",    false,  false,  false,  true,   NULL,   
"res_0",        "any",  0,      0,      "out",  "arg_1",        "any",  0,      
0,      "in",   "arg_2",        "smallint",     15,     0,      "in",   
"arg_3",        "any",  0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "lead", "SYSTEM",       "lead", "sql",  
"Internal C",   "Analytic function",    false,  false,  false,  true,   NULL,   
"res_0",        "any",  0,      0,      "out",  "arg_1",        "any",  0,      
0,      "in",   "arg_2",        "tinyint",      7,      0,      "in",   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "lead", "SYSTEM",       "lead", "sql",  
"Internal C",   "Analytic function",    false,  false,  false,  true,   NULL,   
"res_0",        "any",  0,      0,      "out",  "arg_1",        "any",  0,      
0,      "in",   "arg_2",        "tinyint",      7,      0,      "in",   
"arg_3",        "any",  0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
-[ "sys.functions",     "sys",  "least",        "SYSTEM",       "min_no_nil",   
"calc", "Internal C",   "Scalar function",      false,  false,  false,  true,   
NULL,   "res_0",        "any",  0,      0,      "out",  "arg_1",        "any",  
0,      0,      "in",   "arg_2",        "any",  0,      0,      "in",   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
+[ "sys.functions",     "sys",  "least",        "SYSTEM",       "min_no_nil",   
"calc", "Internal C",   "Scalar function",      false,  false,  true,   true,   
NULL,   "res_0",        "any",  0,      0,      "out",  "arg_1",        "any",  
0,      0,      "in",   "arg_2",        "any",  0,      0,      "in",   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "left", "SYSTEM",       "stringleft",   "str",  
"Internal C",   "Scalar function",      false,  false,  false,  false,  NULL,   
"res_0",        "varchar",      0,      0,      "out",  "arg_1",        
"varchar",      0,      0,      "in",   "arg_2",        "int",  31,     0,      
"in",   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "left_shift",   "SYSTEM",       "<<",   "calc", 
"Internal C",   "Scalar function",      false,  false,  false,  false,  NULL,   
"res_0",        "bigint",       63,     0,      "out",  "arg_1",        
"bigint",       63,     0,      "in",   "arg_2",        "int",  31,     0,      
"in",   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "left_shift",   "SYSTEM",       "<<",   "calc", 
"Internal C",   "Scalar function",      false,  false,  false,  false,  NULL,   
"res_0",        "int",  31,     0,      "out",  "arg_1",        "int",  31,     
0,      "in",   "arg_2",        "int",  31,     0,      "in",   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL    ]
@@ -2169,6 +2170,7 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "month",        "SYSTEM",       "month",        
"mtime",        "Internal C",   "Scalar function",      false,  false,  false,  
false,  NULL,   "res_0",        "int",  31,     0,      "out",  "arg_1",        
"month_interval",       3,      0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "month",        "SYSTEM",       "month",        
"mtime",        "Internal C",   "Scalar function",      false,  false,  false,  
false,  NULL,   "res_0",        "tinyint",      7,      0,      "out",  
"arg_1",        "date", 0,      0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "month",        "SYSTEM",       "month",        
"mtime",        "Internal C",   "Scalar function",      false,  false,  false,  
false,  NULL,   "res_0",        "tinyint",      7,      0,      "out",  
"arg_1",        "timestamp",    7,      0,      "in",   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
+[ "sys.functions",     "sys",  "monthname",    "SYSTEM",       "create 
function monthname(d date) returns varchar(10) return date_to_str(d, '%B');",   
"sql",  "SQL",  "Scalar function",      false,  false,  false,  true,   NULL,   
"result",       "varchar",      10,     0,      "out",  "d",    "date", 0,      
0,      "in",   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL    ]
 [ "sys.functions",     "sys",  "ms_round",     "SYSTEM",       "create 
function ms_round(num double, prc int, truncat int) returns double begin if 
(truncat = 0) then return round(num, prc); else return ms_trunc(num, prc); end 
if; end;",   "sql",  "SQL",  "Scalar function",      false,  false,  false,  
true,   NULL,   "result",       "double",       53,     0,      "out",  "num",  
"double",       53,     0,      "in",   "prc",  "int",  31,     0,      "in",   
"truncat",      "int",  31,     0,      "in",   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "ms_str",       "SYSTEM",       "create 
function ms_str(num float, prc int, truncat int) returns string begin return 
cast(num as string); end;",        "sql",  "SQL",  "Scalar function",      
false,  false,  false,  true,   NULL,   "result",       "varchar",      0,      
0,      "out",  "num",  "double",       53,     0,      "in",   "prc",  "int",  
31,     0,      "in",   "truncat",      "int",  31,     0,      "in",   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
 [ "sys.functions",     "sys",  "ms_stuff",     "SYSTEM",       "create 
function ms_stuff(s1 varchar(32), st int, len int, s3 varchar(32)) returns 
varchar(32) begin declare res varchar(32), aux varchar(32); declare ofset int; 
if (st < 0 or st > length(s1)) then return ''; end if; set ofset = 1; set res = 
substring(s1,ofset,st-1); set res = res || s3; set ofset = st + len; set aux = 
substring(s1,ofset,length(s1)-ofset+1); set res = res || aux; return res; 
end;",       "sql",  "SQL",  "Scalar function",      false,  false,  false,  
true,   NULL,   "result",       "varchar",      32,     0,      "out",  "s1",   
"varchar",      32,     0,      "in",   "st",   "int",  31,     0,      "in",   
"len",  "int",  31,     0,      "in",   "s3",   "varchar",      32,     0,      
"in",   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   
NULL,   NULL,   NULL,   NULL,   NULL,   NULL    ]
@@ -2866,6 +2868,7 @@ select 'null in fkeys.delete_action', de
 % %1,  name,   name,   name,   name,   dependency_type_name # name
 % varchar,     varchar,        varchar,        varchar,        varchar,        
varchar # type
 % 25,  3,      17,     3,      37,     9 # length
+[ "function used by function", "sys",  "date_to_str",  "sys",  "dayname",      
"FUNCTION"      ]
 [ "function used by function", "sys",  "describe_type",        "sys",  
"describe_columns",     "FUNCTION"      ]
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to