Changeset: 2f7b76be7873 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2f7b76be7873 Modified Files: clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 sql/ChangeLog 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/miscellaneous/Tests/deallocate.sql sql/test/miscellaneous/Tests/deallocate.stable.err sql/test/miscellaneous/Tests/deallocate.stable.out sql/test/sys-schema/Tests/systemfunctions.stable.out sql/test/sys-schema/Tests/systemfunctions.stable.out.int128 Branch: default Log Message:
Updated ChangeLog and tests approval diffs (truncated from 509 to 300 lines): diff --git a/clients/Tests/MAL-signatures.stable.out b/clients/Tests/MAL-signatures.stable.out --- a/clients/Tests/MAL-signatures.stable.out +++ b/clients/Tests/MAL-signatures.stable.out @@ -11757,6 +11757,7 @@ stdout of test 'MAL-signatures` in direc [ "sql", "password", "pattern sql.password(user:str):str ", "db_password_wrap;", "Return password hash of user" ] [ "sql", "percent_rank", "pattern sql.percent_rank(b:any_1, p:bit, o:bit):dbl ", "SQLpercent_rank;", "return the percentage into the total number of groups for each row" ] [ "sql", "prelude", "pattern sql.prelude():void ", "SQLprelude;", "" ] +[ "sql", "prepared_statements", "pattern sql.prepared_statements() (sessionid:bat[:int], user:bat[:str], statementid:bat[:int], statementt:bat[:str], createdd:bat[:timestamp]) ", "SQLsession_prepared_statements;", "Available prepared statements in the current session" ] [ "sql", "prod", "pattern sql.prod(b:bte, s:lng, e:lng):lng ", "SQLprod;", "return the product of groups" ] [ "sql", "prod", "pattern sql.prod(b:dbl, s:lng, e:lng):dbl ", "SQLprod;", "return the product of groups" ] [ "sql", "prod", "pattern sql.prod(b:flt, s:lng, e:lng):dbl ", "SQLprod;", "return the product of groups" ] diff --git a/clients/Tests/MAL-signatures.stable.out.int128 b/clients/Tests/MAL-signatures.stable.out.int128 --- a/clients/Tests/MAL-signatures.stable.out.int128 +++ b/clients/Tests/MAL-signatures.stable.out.int128 @@ -16163,6 +16163,7 @@ stdout of test 'MAL-signatures` in direc [ "sql", "password", "pattern sql.password(user:str):str ", "db_password_wrap;", "Return password hash of user" ] [ "sql", "percent_rank", "pattern sql.percent_rank(b:any_1, p:bit, o:bit):dbl ", "SQLpercent_rank;", "return the percentage into the total number of groups for each row" ] [ "sql", "prelude", "pattern sql.prelude():void ", "SQLprelude;", "" ] +[ "sql", "prepared_statements", "pattern sql.prepared_statements() (sessionid:bat[:int], user:bat[:str], statementid:bat[:int], statementt:bat[:str], createdd:bat[:timestamp]) ", "SQLsession_prepared_statements;", "Available prepared statements in the current session" ] [ "sql", "prod", "pattern sql.prod(b:bte, s:lng, e:lng):hge ", "SQLprod;", "return the product of groups" ] [ "sql", "prod", "pattern sql.prod(b:bte, s:lng, e:lng):lng ", "SQLprod;", "return the product of groups" ] [ "sql", "prod", "pattern sql.prod(b:dbl, s:lng, e:lng):dbl ", "SQLprod;", "return the product of groups" ] diff --git a/sql/ChangeLog b/sql/ChangeLog --- a/sql/ChangeLog +++ b/sql/ChangeLog @@ -2,9 +2,11 @@ # This file is updated with Maddlog * Fri Dec 13 2019 Pedro Ferreira <pedro.ferre...@monetdbsolutions.com> +- Added sys.prepared_statements view, which depicts the available prepared + statements in the current session. - Added deallocate statements with the syntax 'DEALLOCATE [PREPARE] - { number | ALL }', to close an existing prepared statement or all, - through the SQL layer. Previously this feature was available via MAPI + { number | ALL }', to close an existing prepared statement or all, + through the SQL layer. Previously this feature was available via MAPI exclusively with the "release" command. * Wed Nov 27 2019 Pedro Ferreira <pedro.ferre...@monetdbsolutions.com> 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 @@ -118,6 +118,7 @@ stdout of test 'check` in directory 'sql \dSv sys.geometry_columns \dSv sys.ids \dSv sys.optimizers +\dSv sys.prepared_statements \dSv sys.querylog_calls \dSv sys.querylog_catalog \dSv sys.querylog_history @@ -217,6 +218,7 @@ stdout of test 'check` in directory 'sql \dSf sys."optimizers" \dSf sys."password_hash" \dSf sys."pause" +\dSf sys."prepared_statements" \dSf sys."quantile" \dSf sys."quantile_avg" \dSf sys."querycache" @@ -436,6 +438,7 @@ SYSTEM VIEW sys.environment SYSTEM VIEW sys.geometry_columns SYSTEM VIEW sys.ids SYSTEM VIEW sys.optimizers +SYSTEM VIEW sys.prepared_statements SYSTEM VIEW sys.querylog_calls SYSTEM VIEW sys.querylog_catalog SYSTEM VIEW sys.querylog_history @@ -660,6 +663,7 @@ SYSTEM PROCEDURE sys.pause SYSTEM FUNCTION sys.percent_rank SYSTEM FUNCTION sys.pi SYSTEM FUNCTION sys.power +SYSTEM FUNCTION sys.prepared_statements SYSTEM AGGREGATE sys.prod SYSTEM FUNCTION sys.prod SYSTEM FUNCTION sys.qgramnormalize @@ -950,6 +954,7 @@ create view sys.environment as select * create view sys.geometry_columns as select cast(null as varchar(1)) as f_table_catalog, s.name as f_table_schema, t.name as f_table_name, c.name as f_geometry_column, cast(has_z(c.type_digits) + has_m(c.type_digits) +2 as integer) as coord_dimension, c.type_scale as srid, get_type(c.type_digits, 0) as type from sys.columns c, sys.tables t, sys.schemas s where c.table_id = t.id and t.schema_id = s.id and c.type in (select sqlname from sys.types where systemname in ('wkb', 'wkba')); create view sys.ids (id, name, schema_id, table_id, table_name, obj_type, sys_table) as select id, name, cast(null as int) as schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'author' as obj_type, 'sys.auths' as sys_table from sys.auths union all select id, name, cast(null as int) as schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'schema', 'sys.schemas' from sys.schemas union all select id, name, schema_id, id as table_id, name as table_name, case when type = 1 then 'view' else 'table' end, 'sys._tables' from sys._tables union all select id, name, schema_id, id as table_id, name as table_name, case when type = 1 then 'view' else 'table' end, 'tmp._tables' from tmp._tables union all select c.id, c.name, t.schema_id, c.table_id, t.name as table_name, 'column', 'sys._columns' from sys._columns c join sys._tables t on c.table_id = t.id union all select c.id, c.name, t.schema_id, c.table_id, t.name as table_name, 'co lumn', 'tmp._columns' from tmp._columns c join tmp._tables t on c.table_id = t.id union all select k.id, k.name, t.schema_id, k.table_id, t.name as table_name, 'key', 'sys.keys' from sys.keys k join sys._tables t on k.table_id = t.id union all select k.id, k.name, t.schema_id, k.table_id, t.name as table_name, 'key', 'tmp.keys' from tmp.keys k join tmp._tables t on k.table_id = t.id union all select i.id, i.name, t.schema_id, i.table_id, t.name as table_name, 'index', 'sys.idxs' from sys.idxs i join sys._tables t on i.table_id = t.id union all select i.id, i.name, t.schema_id, i.table_id, t.name as table_name, 'index', 'tmp.idxs' from tmp.idxs i join tmp._tables t on i.table_id = t.id union all select g.id, g.name, t.schema_id, g.table_id, t.name as table_name, 'trigger', 'sys.triggers' from sys.triggers g join sys._tables t on g.table_id = t.id union all select g.id, g.name, t.schema_id, g.table_id, t.name as table_name, 'trigger', 'tmp.triggers' from tmp.triggers g join tmp._table s t on g.table_id = t.id union all select id, name, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, case when type = 2 then 'procedure' else 'function' end, 'sys.functions' from sys.functions union all select a.id, a.name, f.schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, case when f.type = 2 then 'procedure arg' else 'function arg' end, 'sys.args' from sys.args a join sys.functions f on a.func_id = f.id union all select id, name, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'sequence', 'sys.sequences' from sys.sequences union all select id, sqlname, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'type', 'sys.types' from sys.types where id > 2000 order by id; create view sys.optimizers as select * from sys.optimizers(); +create view sys.prepared_statements as select * from sys.prepared_statements(); create view sys.querylog_calls as select * from sys.querylog_calls(); create view sys.querylog_catalog as select * from sys.querylog_catalog(); create view sys.querylog_history as select qd.*, ql."start",ql."stop", ql.arguments, ql.tuples, ql.run, ql.ship, ql.cpu, ql.io from sys.querylog_catalog() qd, sys.querylog_calls() ql where qd.id = ql.id and qd.owner = user; @@ -1100,6 +1105,7 @@ create procedure sys.pause(tag bigint) e create procedure sys.pause(tag int) external name sql.sysmon_pause; create procedure sys.pause(tag smallint) external name sql.sysmon_pause; create procedure sys.pause(tag tinyint) external name sql.sysmon_pause; +create function sys.prepared_statements() returns table("sessionid" int, "user" string, "statementid" int, "statement" string, "created" timestamp) external name sql.prepared_statements; create aggregate quantile(val bigint, q double) returns bigint external name "aggr"."quantile"; create aggregate quantile(val date, q double) returns date external name "aggr"."quantile"; create aggregate quantile(val decimal, q double) returns decimal external name "aggr"."quantile"; @@ -1493,6 +1499,7 @@ drop function pcre_replace(string, strin [ "sys", "netcdf_vars", NULL, "TABLE", true, "COMMIT", "WRITABLE" ] [ "sys", "objects", NULL, "TABLE", true, "COMMIT", "WRITABLE" ] [ "sys", "optimizers", "create view sys.optimizers as select * from sys.optimizers();", "VIEW", true, "COMMIT", "WRITABLE" ] +[ "sys", "prepared_statements", "create view sys.prepared_statements as select * from sys.prepared_statements();", "VIEW", true, "COMMIT", "WRITABLE" ] [ "sys", "privilege_codes", NULL, "TABLE", true, "COMMIT", "READONLY" ] [ "sys", "privileges", NULL, "TABLE", true, "COMMIT", "WRITABLE" ] [ "sys", "querylog_calls", "create view sys.querylog_calls as select * from sys.querylog_calls();", "VIEW", true, "COMMIT", "WRITABLE" ] @@ -1903,6 +1910,11 @@ drop function pcre_replace(string, strin [ "pg", "cl", "clob", 0, 0, NULL, true, 3, NULL ] [ "pg", "pp", "clob", 0, 0, NULL, true, 4, NULL ] [ "pg", "vn", "clob", 0, 0, NULL, true, 5, NULL ] +[ "prepared_statements", "sessionid", "int", 32, 0, NULL, true, 0, NULL ] +[ "prepared_statements", "user", "clob", 0, 0, NULL, true, 1, NULL ] +[ "prepared_statements", "statementid", "int", 32, 0, NULL, true, 2, NULL ] +[ "prepared_statements", "statement", "clob", 0, 0, NULL, true, 3, NULL ] +[ "prepared_statements", "created", "timestamp", 7, 0, NULL, true, 4, NULL ] [ "privilege_codes", "privilege_code_id", "int", 32, 0, NULL, false, 0, NULL ] [ "privilege_codes", "privilege_code_name", "varchar", 40, 0, NULL, false, 1, NULL ] [ "privileges", "obj_id", "int", 32, 0, NULL, true, 0, NULL ] @@ -4034,12 +4046,13 @@ drop function pcre_replace(string, strin % sys.s1, sys.f1, sys.s2, sys.t2, .dt # table_name % name, name, name, name, dependency_type_name # name % varchar, varchar, varchar, varchar, varchar # type -% 3, 16, 3, 17, 4 # length +% 3, 19, 3, 19, 4 # length [ "sys", "env", "sys", "environment", "VIEW" ] [ "sys", "get_type", "sys", "geometry_columns", "VIEW" ] [ "sys", "has_m", "sys", "geometry_columns", "VIEW" ] [ "sys", "has_z", "sys", "geometry_columns", "VIEW" ] [ "sys", "optimizers", "sys", "optimizers", "VIEW" ] +[ "sys", "prepared_statements", "sys", "prepared_statements", "VIEW" ] [ "sys", "querylog_calls", "sys", "querylog_calls", "VIEW" ] [ "sys", "querylog_catalog", "sys", "querylog_catalog", "VIEW" ] [ "sys", "querylog_calls", "sys", "querylog_history", "VIEW" ] @@ -4850,6 +4863,7 @@ drop function pcre_replace(string, strin [ "netcdf_vars", "public", "SELECT", "monetdb", 0 ] [ "objects", "public", "SELECT", NULL, 0 ] [ "pg", "public", "SELECT", "monetdb", 0 ] +[ "prepared_statements", "public", "SELECT", "monetdb", 0 ] [ "privilege_codes", "public", "SELECT", "monetdb", 0 ] [ "privileges", "public", "SELECT", NULL, 0 ] [ "queue", "public", "SELECT", "monetdb", 0 ] @@ -4981,6 +4995,7 @@ drop function pcre_replace(string, strin [ "newurl", "public", "EXECUTE", "monetdb", 0 ] [ "number", "public", "EXECUTE", "monetdb", 0 ] [ "output", "public", "EXECUTE", "monetdb", 0 ] +[ "prepared_statements", "public", "EXECUTE", "monetdb", 0 ] [ "quantile", "public", "EXECUTE", "monetdb", 0 ] [ "quantile", "public", "EXECUTE", "monetdb", 0 ] [ "quantile", "public", "EXECUTE", "monetdb", 0 ] @@ -5303,6 +5318,7 @@ drop function pcre_replace(string, strin [ "CURRENT_TIMESTAMP" ] [ "CURRENT_USER" ] [ "DAY" ] +[ "DEALLOCATE" ] [ "DEC" ] [ "DECIMAL" ] [ "DECLARE" ] 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 @@ -118,6 +118,7 @@ stdout of test 'check` in directory 'sql \dSv sys.geometry_columns \dSv sys.ids \dSv sys.optimizers +\dSv sys.prepared_statements \dSv sys.querylog_calls \dSv sys.querylog_catalog \dSv sys.querylog_history @@ -217,6 +218,7 @@ stdout of test 'check` in directory 'sql \dSf sys."optimizers" \dSf sys."password_hash" \dSf sys."pause" +\dSf sys."prepared_statements" \dSf sys."quantile" \dSf sys."quantile_avg" \dSf sys."querycache" @@ -438,6 +440,7 @@ SYSTEM VIEW sys.environment SYSTEM VIEW sys.geometry_columns SYSTEM VIEW sys.ids SYSTEM VIEW sys.optimizers +SYSTEM VIEW sys.prepared_statements SYSTEM VIEW sys.querylog_calls SYSTEM VIEW sys.querylog_catalog SYSTEM VIEW sys.querylog_history @@ -662,6 +665,7 @@ SYSTEM PROCEDURE sys.pause SYSTEM FUNCTION sys.percent_rank SYSTEM FUNCTION sys.pi SYSTEM FUNCTION sys.power +SYSTEM FUNCTION sys.prepared_statements SYSTEM AGGREGATE sys.prod SYSTEM FUNCTION sys.prod SYSTEM FUNCTION sys.qgramnormalize @@ -954,6 +958,7 @@ create view sys.environment as select * create view sys.geometry_columns as select cast(null as varchar(1)) as f_table_catalog, s.name as f_table_schema, t.name as f_table_name, c.name as f_geometry_column, cast(has_z(c.type_digits) + has_m(c.type_digits) +2 as integer) as coord_dimension, c.type_scale as srid, get_type(c.type_digits, 0) as type from sys.columns c, sys.tables t, sys.schemas s where c.table_id = t.id and t.schema_id = s.id and c.type in (select sqlname from sys.types where systemname in ('wkb', 'wkba')); create view sys.ids (id, name, schema_id, table_id, table_name, obj_type, sys_table) as select id, name, cast(null as int) as schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'author' as obj_type, 'sys.auths' as sys_table from sys.auths union all select id, name, cast(null as int) as schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'schema', 'sys.schemas' from sys.schemas union all select id, name, schema_id, id as table_id, name as table_name, case when type = 1 then 'view' else 'table' end, 'sys._tables' from sys._tables union all select id, name, schema_id, id as table_id, name as table_name, case when type = 1 then 'view' else 'table' end, 'tmp._tables' from tmp._tables union all select c.id, c.name, t.schema_id, c.table_id, t.name as table_name, 'column', 'sys._columns' from sys._columns c join sys._tables t on c.table_id = t.id union all select c.id, c.name, t.schema_id, c.table_id, t.name as table_name, 'co lumn', 'tmp._columns' from tmp._columns c join tmp._tables t on c.table_id = t.id union all select k.id, k.name, t.schema_id, k.table_id, t.name as table_name, 'key', 'sys.keys' from sys.keys k join sys._tables t on k.table_id = t.id union all select k.id, k.name, t.schema_id, k.table_id, t.name as table_name, 'key', 'tmp.keys' from tmp.keys k join tmp._tables t on k.table_id = t.id union all select i.id, i.name, t.schema_id, i.table_id, t.name as table_name, 'index', 'sys.idxs' from sys.idxs i join sys._tables t on i.table_id = t.id union all select i.id, i.name, t.schema_id, i.table_id, t.name as table_name, 'index', 'tmp.idxs' from tmp.idxs i join tmp._tables t on i.table_id = t.id union all select g.id, g.name, t.schema_id, g.table_id, t.name as table_name, 'trigger', 'sys.triggers' from sys.triggers g join sys._tables t on g.table_id = t.id union all select g.id, g.name, t.schema_id, g.table_id, t.name as table_name, 'trigger', 'tmp.triggers' from tmp.triggers g join tmp._table s t on g.table_id = t.id union all select id, name, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, case when type = 2 then 'procedure' else 'function' end, 'sys.functions' from sys.functions union all select a.id, a.name, f.schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, case when f.type = 2 then 'procedure arg' else 'function arg' end, 'sys.args' from sys.args a join sys.functions f on a.func_id = f.id union all select id, name, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'sequence', 'sys.sequences' from sys.sequences union all select id, sqlname, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'type', 'sys.types' from sys.types where id > 2000 order by id; create view sys.optimizers as select * from sys.optimizers(); +create view sys.prepared_statements as select * from sys.prepared_statements(); create view sys.querylog_calls as select * from sys.querylog_calls(); create view sys.querylog_catalog as select * from sys.querylog_catalog(); create view sys.querylog_history as select qd.*, ql."start",ql."stop", ql.arguments, ql.tuples, ql.run, ql.ship, ql.cpu, ql.io from sys.querylog_catalog() qd, sys.querylog_calls() ql where qd.id = ql.id and qd.owner = user; @@ -1104,6 +1109,7 @@ create procedure sys.pause(tag bigint) e create procedure sys.pause(tag int) external name sql.sysmon_pause; create procedure sys.pause(tag smallint) external name sql.sysmon_pause; create procedure sys.pause(tag tinyint) external name sql.sysmon_pause; +create function sys.prepared_statements() returns table("sessionid" int, "user" string, "statementid" int, "statement" string, "created" timestamp) external name sql.prepared_statements; create aggregate quantile(val bigint, q double) returns bigint external name "aggr"."quantile"; create aggregate quantile(val date, q double) returns date external name "aggr"."quantile"; create aggregate quantile(val decimal, q double) returns decimal external name "aggr"."quantile"; @@ -1487,6 +1493,7 @@ drop function pcre_replace(string, strin [ "sys", "netcdf_vars", NULL, "TABLE", true, "COMMIT", "WRITABLE" ] [ "sys", "objects", NULL, "TABLE", true, "COMMIT", "WRITABLE" ] [ "sys", "optimizers", "create view sys.optimizers as select * from sys.optimizers();", "VIEW", true, "COMMIT", "WRITABLE" ] +[ "sys", "prepared_statements", "create view sys.prepared_statements as select * from sys.prepared_statements();", "VIEW", true, "COMMIT", "WRITABLE" ] [ "sys", "privilege_codes", NULL, "TABLE", true, "COMMIT", "READONLY" ] [ "sys", "privileges", NULL, "TABLE", true, "COMMIT", "WRITABLE" ] [ "sys", "querylog_calls", "create view sys.querylog_calls as select * from sys.querylog_calls();", "VIEW", true, "COMMIT", "WRITABLE" ] @@ -1897,6 +1904,11 @@ drop function pcre_replace(string, strin [ "pg", "cl", "clob", 0, 0, NULL, true, 3, NULL ] [ "pg", "pp", "clob", 0, 0, NULL, true, 4, NULL ] [ "pg", "vn", "clob", 0, 0, NULL, true, 5, NULL ] +[ "prepared_statements", "sessionid", "int", 32, 0, NULL, true, 0, NULL ] +[ "prepared_statements", "user", "clob", 0, 0, NULL, true, 1, NULL ] +[ "prepared_statements", "statementid", "int", 32, 0, NULL, true, 2, NULL ] +[ "prepared_statements", "statement", "clob", 0, 0, NULL, true, 3, NULL ] +[ "prepared_statements", "created", "timestamp", 7, 0, NULL, true, 4, NULL ] [ "privilege_codes", "privilege_code_id", "int", 32, 0, NULL, false, 0, NULL ] [ "privilege_codes", "privilege_code_name", "varchar", 40, 0, NULL, false, 1, NULL ] [ "privileges", "obj_id", "int", 32, 0, NULL, true, 0, NULL ] @@ -4017,12 +4029,13 @@ drop function pcre_replace(string, strin % sys.s1, sys.f1, sys.s2, sys.t2, .dt # table_name % name, name, name, name, dependency_type_name # name % varchar, varchar, varchar, varchar, varchar # type -% 3, 16, 3, 17, 4 # length +% 3, 19, 3, 19, 4 # length [ "sys", "env", "sys", "environment", "VIEW" ] [ "sys", "get_type", "sys", "geometry_columns", "VIEW" ] [ "sys", "has_m", "sys", "geometry_columns", "VIEW" ] [ "sys", "has_z", "sys", "geometry_columns", "VIEW" ] [ "sys", "optimizers", "sys", "optimizers", "VIEW" ] +[ "sys", "prepared_statements", "sys", "prepared_statements", "VIEW" ] [ "sys", "querylog_calls", "sys", "querylog_calls", "VIEW" ] [ "sys", "querylog_catalog", "sys", "querylog_catalog", "VIEW" ] [ "sys", "querylog_calls", "sys", "querylog_history", "VIEW" ] @@ -4833,6 +4846,7 @@ drop function pcre_replace(string, strin [ "netcdf_vars", "public", "SELECT", "monetdb", 0 ] [ "objects", "public", "SELECT", NULL, 0 ] [ "pg", "public", "SELECT", "monetdb", 0 ] +[ "prepared_statements", "public", "SELECT", "monetdb", 0 ] [ "privilege_codes", "public", "SELECT", "monetdb", 0 ] [ "privileges", "public", "SELECT", NULL, 0 ] [ "queue", "public", "SELECT", "monetdb", 0 ] @@ -4964,6 +4978,7 @@ drop function pcre_replace(string, strin [ "newurl", "public", "EXECUTE", "monetdb", 0 ] [ "number", "public", "EXECUTE", "monetdb", 0 ] [ "output", "public", "EXECUTE", "monetdb", 0 ] +[ "prepared_statements", "public", "EXECUTE", "monetdb", 0 ] [ "quantile", "public", "EXECUTE", "monetdb", 0 ] [ "quantile", "public", "EXECUTE", "monetdb", 0 ] [ "quantile", "public", "EXECUTE", "monetdb", 0 ] @@ -5286,6 +5301,7 @@ drop function pcre_replace(string, strin [ "CURRENT_TIMESTAMP" ] [ "CURRENT_USER" ] [ "DAY" ] +[ "DEALLOCATE" ] [ "DEC" ] [ "DECIMAL" ] [ "DECLARE" ] 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 @@ -118,6 +118,7 @@ stdout of test 'check` in directory 'sql \dSv sys.geometry_columns \dSv sys.ids \dSv sys.optimizers +\dSv sys.prepared_statements \dSv sys.querylog_calls \dSv sys.querylog_catalog \dSv sys.querylog_history @@ -217,6 +218,7 @@ stdout of test 'check` in directory 'sql \dSf sys."optimizers" \dSf sys."password_hash" \dSf sys."pause" +\dSf sys."prepared_statements" \dSf sys."quantile" \dSf sys."quantile_avg" \dSf sys."querycache" @@ -436,6 +438,7 @@ SYSTEM VIEW sys.environment SYSTEM VIEW sys.geometry_columns SYSTEM VIEW sys.ids SYSTEM VIEW sys.optimizers +SYSTEM VIEW sys.prepared_statements SYSTEM VIEW sys.querylog_calls SYSTEM VIEW sys.querylog_catalog SYSTEM VIEW sys.querylog_history @@ -660,6 +663,7 @@ SYSTEM PROCEDURE sys.pause SYSTEM FUNCTION sys.percent_rank SYSTEM FUNCTION sys.pi SYSTEM FUNCTION sys.power +SYSTEM FUNCTION sys.prepared_statements SYSTEM AGGREGATE sys.prod SYSTEM FUNCTION sys.prod SYSTEM FUNCTION sys.qgramnormalize @@ -950,6 +954,7 @@ create view sys.environment as select * create view sys.geometry_columns as select cast(null as varchar(1)) as f_table_catalog, s.name as f_table_schema, t.name as f_table_name, c.name as f_geometry_column, cast(has_z(c.type_digits) + has_m(c.type_digits) +2 as integer) as coord_dimension, c.type_scale as srid, get_type(c.type_digits, 0) as type from sys.columns c, sys.tables t, sys.schemas s where c.table_id = t.id and t.schema_id = s.id and c.type in (select sqlname from sys.types where systemname in ('wkb', 'wkba')); create view sys.ids (id, name, schema_id, table_id, table_name, obj_type, sys_table) as select id, name, cast(null as int) as schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'author' as obj_type, 'sys.auths' as sys_table from sys.auths union all select id, name, cast(null as int) as schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'schema', 'sys.schemas' from sys.schemas union all select id, name, schema_id, id as table_id, name as table_name, case when type = 1 then 'view' else 'table' end, 'sys._tables' from sys._tables union all select id, name, schema_id, id as table_id, name as table_name, case when type = 1 then 'view' else 'table' end, 'tmp._tables' from tmp._tables union all select c.id, c.name, t.schema_id, c.table_id, t.name as table_name, 'column', 'sys._columns' from sys._columns c join sys._tables t on c.table_id = t.id union all select c.id, c.name, t.schema_id, c.table_id, t.name as table_name, 'co lumn', 'tmp._columns' from tmp._columns c join tmp._tables t on c.table_id = t.id union all select k.id, k.name, t.schema_id, k.table_id, t.name as table_name, 'key', 'sys.keys' from sys.keys k join sys._tables t on k.table_id = t.id union all select k.id, k.name, t.schema_id, k.table_id, t.name as table_name, 'key', 'tmp.keys' from tmp.keys k join tmp._tables t on k.table_id = t.id union all select i.id, i.name, t.schema_id, i.table_id, t.name as table_name, 'index', 'sys.idxs' from sys.idxs i join sys._tables t on i.table_id = t.id union all select i.id, i.name, t.schema_id, i.table_id, t.name as table_name, 'index', 'tmp.idxs' from tmp.idxs i join tmp._tables t on i.table_id = t.id union all select g.id, g.name, t.schema_id, g.table_id, t.name as table_name, 'trigger', 'sys.triggers' from sys.triggers g join sys._tables t on g.table_id = t.id union all select g.id, g.name, t.schema_id, g.table_id, t.name as table_name, 'trigger', 'tmp.triggers' from tmp.triggers g join tmp._table s t on g.table_id = t.id union all select id, name, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, case when type = 2 then 'procedure' else 'function' end, 'sys.functions' from sys.functions union all select a.id, a.name, f.schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, case when f.type = 2 then 'procedure arg' else 'function arg' end, 'sys.args' from sys.args a join sys.functions f on a.func_id = f.id union all select id, name, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'sequence', 'sys.sequences' from sys.sequences union all select id, sqlname, schema_id, cast(null as int) as table_id, cast(null as varchar(124)) as table_name, 'type', 'sys.types' from sys.types where id > 2000 order by id; create view sys.optimizers as select * from sys.optimizers(); +create view sys.prepared_statements as select * from sys.prepared_statements(); create view sys.querylog_calls as select * from sys.querylog_calls(); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list