Changeset: ae5fb2cba073 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/ae5fb2cba073
Modified Files:
        clients/Tests/MAL-signatures-hge.test
        clients/Tests/MAL-signatures.test
        sql/backends/monet5/Tests/insertonly_persist.SQL.py
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql_upgrades.c
        sql/test/emptydb/Tests/check.stable.out
        sql/test/emptydb/Tests/check.stable.out.32bit
        sql/test/emptydb/Tests/check.stable.out.int128
Branch: insertonly
Log Message:

Approve signatures and emptydb tests.


diffs (179 lines):

diff --git a/clients/Tests/MAL-signatures-hge.test 
b/clients/Tests/MAL-signatures-hge.test
--- a/clients/Tests/MAL-signatures-hge.test
+++ b/clients/Tests/MAL-signatures-hge.test
@@ -49665,14 +49665,19 @@ SQLinclude;
 Compile and execute a sql statements on the file
 sql
 insertonly_persist
-unsafe pattern sql.insertonly_persist(X_0:str) (X_1:bat[:str], X_2:bat[:lng], 
X_3:bat[:lng]) 
+unsafe pattern sql.insertonly_persist() (X_0:bat[:str], X_1:bat[:int], 
X_2:bat[:lng]) 
 SQLinsertonly_persist;
-Persist deltas on append only tables in schema s.
+Persist deltas on append only tables in current schema
 sql
 insertonly_persist
-unsafe pattern sql.insertonly_persist(X_0:str, X_1:str) (X_2:bat[:str], 
X_3:bat[:lng], X_4:bat[:lng]) 
+unsafe pattern sql.insertonly_persist(X_0:str) (X_1:bat[:str], X_2:bat[:int], 
X_3:bat[:lng]) 
 SQLinsertonly_persist;
-Persist deltas on append only table in schema s table t.
+Persist deltas on append only tables in schema s
+sql
+insertonly_persist
+unsafe pattern sql.insertonly_persist(X_0:str, X_1:str) (X_2:bat[:str], 
X_3:bat[:int], X_4:bat[:lng]) 
+SQLinsertonly_persist;
+Persist deltas on append only table in schema s table t
 sql
 lag
 pattern sql.lag(X_0:any_1, X_1:any, X_2:any_1, X_3:bit, X_4:bit):any_1 
diff --git a/clients/Tests/MAL-signatures.test 
b/clients/Tests/MAL-signatures.test
--- a/clients/Tests/MAL-signatures.test
+++ b/clients/Tests/MAL-signatures.test
@@ -38070,14 +38070,19 @@ SQLinclude;
 Compile and execute a sql statements on the file
 sql
 insertonly_persist
-unsafe pattern sql.insertonly_persist(X_0:str) (X_1:bat[:str], X_2:bat[:lng], 
X_3:bat[:lng]) 
+unsafe pattern sql.insertonly_persist() (X_0:bat[:str], X_1:bat[:int], 
X_2:bat[:lng]) 
 SQLinsertonly_persist;
-Persist deltas on append only tables in schema s.
+Persist deltas on append only tables in current schema
 sql
 insertonly_persist
-unsafe pattern sql.insertonly_persist(X_0:str, X_1:str) (X_2:bat[:str], 
X_3:bat[:lng], X_4:bat[:lng]) 
+unsafe pattern sql.insertonly_persist(X_0:str) (X_1:bat[:str], X_2:bat[:int], 
X_3:bat[:lng]) 
 SQLinsertonly_persist;
-Persist deltas on append only table in schema s table t.
+Persist deltas on append only tables in schema s
+sql
+insertonly_persist
+unsafe pattern sql.insertonly_persist(X_0:str, X_1:str) (X_2:bat[:str], 
X_3:bat[:int], X_4:bat[:lng]) 
+SQLinsertonly_persist;
+Persist deltas on append only table in schema s table t
 sql
 lag
 pattern sql.lag(X_0:any_1, X_1:any, X_2:any_1, X_3:bit, X_4:bit):any_1 
diff --git a/sql/backends/monet5/Tests/insertonly_persist.SQL.py 
b/sql/backends/monet5/Tests/insertonly_persist.SQL.py
--- a/sql/backends/monet5/Tests/insertonly_persist.SQL.py
+++ b/sql/backends/monet5/Tests/insertonly_persist.SQL.py
@@ -21,8 +21,15 @@ with tempfile.TemporaryDirectory() as fa
             tc.execute("ALTER TABLE foo SET INSERT ONLY").assertSucceeded()
             tc.execute("INSERT INTO foo SELECT * FROM generate_series(0,500)")
             tc.execute("SELECT count(*) FROM 
foo").assertSucceeded().assertDataResultMatch([(500,)])
+            tc.execute("SELECT * FROM 
insertonly_persist()").assertSucceeded().assertDataResultMatch([('foo', 7896, 
0)])
+            tc.execute("CREATE TABLE bar (x INT)").assertSucceeded()
+            tc.execute("CREATE TABLE barbar (x INT)").assertSucceeded()
+            tc.execute("CREATE TABLE baz (x INT)").assertSucceeded()
+            tc.execute("CREATE TABLE bazbaz (x INT)").assertSucceeded()
+
             tc.execute("SELECT sleep(2000)")
-            tc.execute("SELECT * FROM 
insertonly_persist('sys')").assertSucceeded().assertDataResultMatch([('foo', 
7891, 500)])
+
+            tc.execute("SELECT * FROM 
insertonly_persist()").assertSucceeded().assertDataResultMatch([('foo', 7896, 
500)])
         s.communicate()
 
     with process.server(mapiport='0', dbname='db1',
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
@@ -5249,9 +5249,9 @@ static mel_func sql_init_funcs[] = {
  pattern("sql", "resume_log_flushing", SQLresume_log_flushing, true, "Resume 
WAL log flushing", args(1,1, arg("",void))),
  pattern("sql", "suspend_log_flushing", SQLsuspend_log_flushing, true, 
"Suspend WAL log flushing", args(1,1, arg("",void))),
  pattern("sql", "hot_snapshot", SQLhot_snapshot, true, "Write db snapshot to 
the given tar(.gz/.lz4/.bz/.xz) file on either server or client", args(1,3, 
arg("",void),arg("tarfile", str),arg("onserver",bit))),
- pattern("sql", "insertonly_persist", SQLinsertonly_persist, true, "Persist 
deltas on append only tables in current schema.", args(3, 3, batarg("table", 
str), batarg("table_id", int), batarg("rowcount", lng))),
- pattern("sql", "insertonly_persist", SQLinsertonly_persist, true, "Persist 
deltas on append only tables in schema s.", args(3, 4, batarg("table", str), 
batarg("table_id", int), batarg("rowcount", lng), arg("s", str))),
- pattern("sql", "insertonly_persist", SQLinsertonly_persist, true, "Persist 
deltas on append only table in schema s table t.", args(3, 5, batarg("table", 
str), batarg("table_id", int), batarg("rowcount", lng), arg("s", str), arg("t", 
str))),
+ pattern("sql", "insertonly_persist", SQLinsertonly_persist, true, "Persist 
deltas on append only tables in current schema", args(3, 3, batarg("table", 
str), batarg("table_id", int), batarg("rowcount", lng))),
+ pattern("sql", "insertonly_persist", SQLinsertonly_persist, true, "Persist 
deltas on append only tables in schema s", args(3, 4, batarg("table", str), 
batarg("table_id", int), batarg("rowcount", lng), arg("s", str))),
+ pattern("sql", "insertonly_persist", SQLinsertonly_persist, true, "Persist 
deltas on append only table in schema s table t", args(3, 5, batarg("table", 
str), batarg("table_id", int), batarg("rowcount", lng), arg("s", str), arg("t", 
str))),
  pattern("sql", "assert", SQLassert, false, "Generate an exception when 
b==true", args(1,3, arg("",void),arg("b",bit),arg("msg",str))),
  pattern("sql", "assert", SQLassertInt, false, "Generate an exception when 
b!=0", args(1,3, arg("",void),arg("b",int),arg("msg",str))),
  pattern("sql", "assert", SQLassertLng, false, "Generate an exception when 
b!=0", args(1,3, arg("",void),arg("b",lng),arg("msg",str))),
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
@@ -6178,13 +6178,13 @@ sql_update_default(Client c, mvc *sql, s
                sql->errstr[0] = '\0';
                const char *query =
                        "CREATE FUNCTION sys.insertonly_persist()\n"
-                       "RETURNS TABLE(\"table\" STRING, \"table_id\" BIGINT, 
\"rowcount\" BIGINT)\n"
+                       "RETURNS TABLE(\"table\" STRING, \"table_id\" INT, 
\"rowcount\" BIGINT)\n"
                        "EXTERNAL NAME sql.insertonly_persist;\n"
                        "CREATE FUNCTION sys.insertonly_persist(sname STRING)\n"
-                       "RETURNS TABLE(\"table\" STRING, \"table_id\" BIGINT, 
\"rowcount\" BIGINT)\n"
+                       "RETURNS TABLE(\"table\" STRING, \"table_id\" INT, 
\"rowcount\" BIGINT)\n"
                        "EXTERNAL NAME sql.insertonly_persist(string);\n"
                        "CREATE FUNCTION sys.insertonly_persist(sname STRING, 
tname STRING)\n"
-                       "RETURNS TABLE(\"table\" STRING, \"table_id\" BIGINT, 
\"rowcount\" BIGINT)\n"
+                       "RETURNS TABLE(\"table\" STRING, \"table_id\" INT, 
\"rowcount\" BIGINT)\n"
                        "EXTERNAL NAME sql.insertonly_persist(string, 
string);\n"
                        "GRANT EXECUTE ON FUNCTION sys.insertonly_persist() TO 
PUBLIC;\n"
                        "UPDATE sys.functions SET system = true WHERE system <> 
true AND\n"
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
@@ -1817,8 +1817,9 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "char", 0,      0,      "out",  "arg_1",        "char", 
0,      0,      "in",   "arg_2",        "int",  32,     0,      "in",   
"arg_3",        "int",  32,     0,      "in",   "arg_4",        "char", 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    ]
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "clob", 0,      0,      "out",  "arg_1",        "clob", 
0,      0,      "in",   "arg_2",        "int",  32,     0,      "in",   
"arg_3",        "int",  32,     0,      "in",   "arg_4",        "clob", 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    ]
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"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",  32,     0,      
"in",   "arg_3",        "int",  32,     0,      "in",   "arg_4",        
"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    
]
-[ "sys.functions",     "sys",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string) returns table(\"table\" string, 
\"table_id\" bigint, \"rowcount\" bigint) external name 
sql.insertonly_persist;", "sql",  "MAL",  "Function returning a table",   true, 
  false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "bigint",       64,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string, tname string) returns 
table(\"table\" string, \"table_id\" bigint, \"rowcount\" bigint) external name 
sql.insertonly_persist;",   "sql",  "MAL",  "Function returning a table",   
true,   false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "bigint",       64,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 0,      0,      
"in",   "tname",        "clob", 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    ]
+[ "sys.functions",     "sys",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist() returns table(\"table\" string, \"table_id\" 
int, \"rowcount\" bigint) external name sql.insertonly_persist;",        "sql", 
 "MAL",  "Function returning a table",   true,   false,  false,  true,   NULL,  
 "table",        "clob", 0,      0,      "out",  "table_id",     "int",  32,    
 0,      "out",  "rowcount",     "bigint",       64,     0,      "out",  NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string) returns table(\"table\" string, 
\"table_id\" int, \"rowcount\" bigint) external name sql.insertonly_persist;",  
  "sql",  "MAL",  "Function returning a table",   true,   false,  false,  true, 
  NULL,   "table",        "clob", 0,      0,      "out",  "table_id",     
"int",  32,     0,      "out",  "rowcount",     "bigint",       64,     0,      
"out",  "sname",        "clob", 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string, tname string) returns 
table(\"table\" string, \"table_id\" int, \"rowcount\" bigint) external name 
sql.insertonly_persist;",      "sql",  "MAL",  "Function returning a table",   
true,   false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "int",  32,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 0,      0,      
"in",   "tname",        "clob", 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    ]
 [ "sys.functions",     "sys",  "internaltransform",    "SYSTEM",       "create 
function internaltransform(geom geometry, srid_src integer, srid_dest integer, 
proj4_src string, proj4_dest string) returns geometry external name 
geom.\"Transform\";",        "geom", "MAL",  "Scalar function",      false,  
false,  false,  true,   NULL,   "result",       "geometry",     0,      0,      
"out",  "geom", "geometry",     0,      0,      "in",   "srid_src",     "int",  
32,     0,      "in",   "srid_dest",    "int",  32,     0,      "in",   
"proj4_src",    "clob", 0,      0,      "in",   "proj4_dest",   "clob", 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    ]
 [ "sys.functions",     "sys",  "isaurl",       "SYSTEM",       "create 
function isaurl(theurl string) returns bool external name url.\"isaURL\";",     
"url",  "MAL",  "Scalar function",      false,  false,  false,  true,   NULL,   
"result",       "boolean",      1,      0,      "out",  "theurl",       "clob", 
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",  "isauuid",      "SYSTEM",       "create 
function sys.isauuid(s string) returns boolean external name 
uuid.\"isaUUID\";",        "uuid", "MAL",  "Scalar function",      false,  
false,  false,  true,   NULL,   "result",       "boolean",      1,      0,      
"out",  "s",    "clob", 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    ]
@@ -4530,6 +4531,7 @@ select 'null in fkeys.delete_action', de
 [ "grant on function", "sys",  "hot_snapshot", ".snapshot",    "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
+[ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "internaltransform",    "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "isaurl",       "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "isauuid",      "public",       "EXECUTE",      
"monetdb",      0       ]
diff --git a/sql/test/emptydb/Tests/check.stable.out.32bit 
b/sql/test/emptydb/Tests/check.stable.out.32bit
--- a/sql/test/emptydb/Tests/check.stable.out.32bit
+++ b/sql/test/emptydb/Tests/check.stable.out.32bit
@@ -1797,8 +1797,9 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "char", 0,      0,      "out",  "arg_1",        "char", 
0,      0,      "in",   "arg_2",        "int",  32,     0,      "in",   
"arg_3",        "int",  32,     0,      "in",   "arg_4",        "char", 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    ]
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "clob", 0,      0,      "out",  "arg_1",        "clob", 
0,      0,      "in",   "arg_2",        "int",  32,     0,      "in",   
"arg_3",        "int",  32,     0,      "in",   "arg_4",        "clob", 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    ]
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"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",  32,     0,      
"in",   "arg_3",        "int",  32,     0,      "in",   "arg_4",        
"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    
]
-[ "sys.functions",     "sys",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string) returns table(\"table\" string, 
\"table_id\" bigint, \"rowcount\" bigint) external name 
sql.insertonly_persist;", "sql",  "MAL",  "Function returning a table",   true, 
  false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "bigint",       64,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string, tname string) returns 
table(\"table\" string, \"table_id\" bigint, \"rowcount\" bigint) external name 
sql.insertonly_persist;",   "sql",  "MAL",  "Function returning a table",   
true,   false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "bigint",       64,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 0,      0,      
"in",   "tname",        "clob", 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    ]
+[ "sys.functions",     "sys",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist() returns table(\"table\" string, \"table_id\" 
int, \"rowcount\" bigint) external name sql.insertonly_persist;",        "sql", 
 "MAL",  "Function returning a table",   true,   false,  false,  true,   NULL,  
 "table",        "clob", 0,      0,      "out",  "table_id",     "int",  32,    
 0,      "out",  "rowcount",     "bigint",       64,     0,      "out",  NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string) returns table(\"table\" string, 
\"table_id\" int, \"rowcount\" bigint) external name sql.insertonly_persist;",  
  "sql",  "MAL",  "Function returning a table",   true,   false,  false,  true, 
  NULL,   "table",        "clob", 0,      0,      "out",  "table_id",     
"int",  32,     0,      "out",  "rowcount",     "bigint",       64,     0,      
"out",  "sname",        "clob", 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string, tname string) returns 
table(\"table\" string, \"table_id\" int, \"rowcount\" bigint) external name 
sql.insertonly_persist;",      "sql",  "MAL",  "Function returning a table",   
true,   false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "int",  32,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 0,      0,      
"in",   "tname",        "clob", 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    ]
 [ "sys.functions",     "sys",  "isaurl",       "SYSTEM",       "create 
function isaurl(theurl string) returns bool external name url.\"isaURL\";",     
"url",  "MAL",  "Scalar function",      false,  false,  false,  true,   NULL,   
"result",       "boolean",      1,      0,      "out",  "theurl",       "clob", 
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",  "isauuid",      "SYSTEM",       "create 
function sys.isauuid(s string) returns boolean external name 
uuid.\"isaUUID\";",        "uuid", "MAL",  "Scalar function",      false,  
false,  false,  true,   NULL,   "result",       "boolean",      1,      0,      
"out",  "s",    "clob", 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",  "isnotnull",    "SYSTEM",       "isnotnil",     
"calc", "Internal C",   "Scalar function",      false,  false,  false,  true,   
NULL,   "res_0",        "boolean",      1,      0,      "out",  "arg_1",        
"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,   NULL,   
NULL,   NULL,   NULL,   NULL    ]
@@ -4312,6 +4313,7 @@ select 'null in fkeys.delete_action', de
 [ "grant on function", "sys",  "hot_snapshot", ".snapshot",    "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
+[ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "isaurl",       "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "isauuid",      "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "jarowinkler",  "public",       "EXECUTE",      
"monetdb",      0       ]
diff --git a/sql/test/emptydb/Tests/check.stable.out.int128 
b/sql/test/emptydb/Tests/check.stable.out.int128
--- a/sql/test/emptydb/Tests/check.stable.out.int128
+++ b/sql/test/emptydb/Tests/check.stable.out.int128
@@ -1836,8 +1836,9 @@ select 'null in fkeys.delete_action', de
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "char", 0,      0,      "out",  "arg_1",        "char", 
0,      0,      "in",   "arg_2",        "int",  32,     0,      "in",   
"arg_3",        "int",  32,     0,      "in",   "arg_4",        "char", 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    ]
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"str",  "Internal C",   "Scalar function",      false,  false,  false,  false,  
NULL,   "res_0",        "clob", 0,      0,      "out",  "arg_1",        "clob", 
0,      0,      "in",   "arg_2",        "int",  32,     0,      "in",   
"arg_3",        "int",  32,     0,      "in",   "arg_4",        "clob", 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    ]
 [ "sys.functions",     "sys",  "insert",       "SYSTEM",       "insert",       
"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",  32,     0,      
"in",   "arg_3",        "int",  32,     0,      "in",   "arg_4",        
"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    
]
-[ "sys.functions",     "sys",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string) returns table(\"table\" string, 
\"table_id\" bigint, \"rowcount\" bigint) external name 
sql.insertonly_persist;", "sql",  "MAL",  "Function returning a table",   true, 
  false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "bigint",       64,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string, tname string) returns 
table(\"table\" string, \"table_id\" bigint, \"rowcount\" bigint) external name 
sql.insertonly_persist;",   "sql",  "MAL",  "Function returning a table",   
true,   false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "bigint",       64,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 0,      0,      
"in",   "tname",        "clob", 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    ]
+[ "sys.functions",     "sys",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist() returns table(\"table\" string, \"table_id\" 
int, \"rowcount\" bigint) external name sql.insertonly_persist;",        "sql", 
 "MAL",  "Function returning a table",   true,   false,  false,  true,   NULL,  
 "table",        "clob", 0,      0,      "out",  "table_id",     "int",  32,    
 0,      "out",  "rowcount",     "bigint",       64,     0,      "out",  NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,   NULL,  
 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string) returns table(\"table\" string, 
\"table_id\" int, \"rowcount\" bigint) external name sql.insertonly_persist;",  
  "sql",  "MAL",  "Function returning a table",   true,   false,  false,  true, 
  NULL,   "table",        "clob", 0,      0,      "out",  "table_id",     
"int",  32,     0,      "out",  "rowcount",     "bigint",       64,     0,      
"out",  "sname",        "clob", 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",  "insertonly_persist",   "SYSTEM",       "create 
function sys.insertonly_persist(sname string, tname string) returns 
table(\"table\" string, \"table_id\" int, \"rowcount\" bigint) external name 
sql.insertonly_persist;",      "sql",  "MAL",  "Function returning a table",   
true,   false,  false,  true,   NULL,   "table",        "clob", 0,      0,      
"out",  "table_id",     "int",  32,     0,      "out",  "rowcount",     
"bigint",       64,     0,      "out",  "sname",        "clob", 0,      0,      
"in",   "tname",        "clob", 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    ]
 [ "sys.functions",     "sys",  "internaltransform",    "SYSTEM",       "create 
function internaltransform(geom geometry, srid_src integer, srid_dest integer, 
proj4_src string, proj4_dest string) returns geometry external name 
geom.\"Transform\";",        "geom", "MAL",  "Scalar function",      false,  
false,  false,  true,   NULL,   "result",       "geometry",     0,      0,      
"out",  "geom", "geometry",     0,      0,      "in",   "srid_src",     "int",  
32,     0,      "in",   "srid_dest",    "int",  32,     0,      "in",   
"proj4_src",    "clob", 0,      0,      "in",   "proj4_dest",   "clob", 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    ]
 [ "sys.functions",     "sys",  "isaurl",       "SYSTEM",       "create 
function isaurl(theurl string) returns bool external name url.\"isaURL\";",     
"url",  "MAL",  "Scalar function",      false,  false,  false,  true,   NULL,   
"result",       "boolean",      1,      0,      "out",  "theurl",       "clob", 
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",  "isauuid",      "SYSTEM",       "create 
function sys.isauuid(s string) returns boolean external name 
uuid.\"isaUUID\";",        "uuid", "MAL",  "Scalar function",      false,  
false,  false,  true,   NULL,   "result",       "boolean",      1,      0,      
"out",  "s",    "clob", 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    ]
@@ -4649,6 +4650,7 @@ select 'null in fkeys.delete_action', de
 [ "grant on function", "sys",  "hot_snapshot", ".snapshot",    "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
+[ "grant on function", "sys",  "insertonly_persist",   "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "internaltransform",    "public",       
"EXECUTE",      "monetdb",      0       ]
 [ "grant on function", "sys",  "isaurl",       "public",       "EXECUTE",      
"monetdb",      0       ]
 [ "grant on function", "sys",  "isauuid",      "public",       "EXECUTE",      
"monetdb",      0       ]
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to