Changeset: cb7e09b86c8b for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/cb7e09b86c8b
Modified Files:
sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade/Tests/upgrade.stable.out
sql/test/emptydb/Tests/check.stable.out
sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-upgrade/Tests/upgrade.stable.out
Branch: default
Log Message:
Approve upgrade code on no-hge build.
diffs (250 lines):
diff --git a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
--- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
+++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out
@@ -376,10 +376,15 @@ drop view if exists sys.dump_partition_t
drop view if exists sys.dump_create_users cascade;
drop view if exists sys.describe_tables cascade;
drop function if exists sys.get_remote_table_expressions(string, string)
cascade;
+drop function if exists sys.remote_table_credentials(string) cascade;
drop function if exists sys.sq(string) cascade;
+create table sys.remote_user_info (table_id int, username varchar(1024),
password varchar(256));
+create function sys.decypher (cypher string) returns string external name
sql.decypher;
+update sys.functions set system = true where system <> true and name =
'decypher' and schema_id = 2000 and type = 1;
+update sys._tables set system = true where system <> true and name =
'remote_user_info' and schema_id = 2000;
CREATE FUNCTION sys.SQ (s STRING) RETURNS STRING BEGIN RETURN '''' ||
sys.replace(s,'''','''''') || ''''; END;
CREATE FUNCTION sys.get_remote_table_expressions(s STRING, t STRING) RETURNS
STRING BEGIN
- RETURN SELECT ' ON ' || sys.SQ(uri) || ' WITH USER ' || sys.SQ(username) || '
ENCRYPTED PASSWORD ' || sys.SQ("hash") FROM sys.remote_table_credentials(s
||'.' || t);
+ RETURN SELECT ' ON ' || sys.SQ(tt.query) || ' WITH USER ' || sys.SQ(username)
|| ' ENCRYPTED PASSWORD ' || sys.SQ(sys.decypher("password")) FROM
sys.remote_user_info r, sys._tables tt, sys.schemas ss where tt.name = t and
ss.name = s and tt.schema_id = ss.id and r.table_id = tt.id;
END;
CREATE VIEW sys.describe_tables AS
SELECT
diff --git a/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out
b/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out
--- a/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out
+++ b/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out
@@ -370,10 +370,15 @@ drop view if exists sys.dump_partition_t
drop view if exists sys.dump_create_users cascade;
drop view if exists sys.describe_tables cascade;
drop function if exists sys.get_remote_table_expressions(string, string)
cascade;
+drop function if exists sys.remote_table_credentials(string) cascade;
drop function if exists sys.sq(string) cascade;
+create table sys.remote_user_info (table_id int, username varchar(1024),
password varchar(256));
+create function sys.decypher (cypher string) returns string external name
sql.decypher;
+update sys.functions set system = true where system <> true and name =
'decypher' and schema_id = 2000 and type = 1;
+update sys._tables set system = true where system <> true and name =
'remote_user_info' and schema_id = 2000;
CREATE FUNCTION sys.SQ (s STRING) RETURNS STRING BEGIN RETURN '''' ||
sys.replace(s,'''','''''') || ''''; END;
CREATE FUNCTION sys.get_remote_table_expressions(s STRING, t STRING) RETURNS
STRING BEGIN
- RETURN SELECT ' ON ' || sys.SQ(uri) || ' WITH USER ' || sys.SQ(username) || '
ENCRYPTED PASSWORD ' || sys.SQ("hash") FROM sys.remote_table_credentials(s
||'.' || t);
+ RETURN SELECT ' ON ' || sys.SQ(tt.query) || ' WITH USER ' || sys.SQ(username)
|| ' ENCRYPTED PASSWORD ' || sys.SQ(sys.decypher("password")) FROM
sys.remote_user_info r, sys._tables tt, sys.schemas ss where tt.name = t and
ss.name = s and tt.schema_id = ss.id and r.table_id = tt.id;
END;
CREATE VIEW sys.describe_tables AS
SELECT
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
@@ -46,10 +46,15 @@ drop view if exists sys.dump_partition_t
drop view if exists sys.dump_create_users cascade;
drop view if exists sys.describe_tables cascade;
drop function if exists sys.get_remote_table_expressions(string, string)
cascade;
+drop function if exists sys.remote_table_credentials(string) cascade;
drop function if exists sys.sq(string) cascade;
+create table sys.remote_user_info (table_id int, username varchar(1024),
password varchar(256));
+create function sys.decypher (cypher string) returns string external name
sql.decypher;
+update sys.functions set system = true where system <> true and name =
'decypher' and schema_id = 2000 and type = 1;
+update sys._tables set system = true where system <> true and name =
'remote_user_info' and schema_id = 2000;
CREATE FUNCTION sys.SQ (s STRING) RETURNS STRING BEGIN RETURN '''' ||
sys.replace(s,'''','''''') || ''''; END;
CREATE FUNCTION sys.get_remote_table_expressions(s STRING, t STRING) RETURNS
STRING BEGIN
- RETURN SELECT ' ON ' || sys.SQ(uri) || ' WITH USER ' || sys.SQ(username) || '
ENCRYPTED PASSWORD ' || sys.SQ("hash") FROM sys.remote_table_credentials(s
||'.' || t);
+ RETURN SELECT ' ON ' || sys.SQ(tt.query) || ' WITH USER ' || sys.SQ(username)
|| ' ENCRYPTED PASSWORD ' || sys.SQ(sys.decypher("password")) FROM
sys.remote_user_info r, sys._tables tt, sys.schemas ss where tt.name = t and
ss.name = s and tt.schema_id = ss.id and r.table_id = tt.id;
END;
CREATE VIEW sys.describe_tables AS
SELECT
diff --git a/sql/test/emptydb-upgrade/Tests/upgrade.stable.out
b/sql/test/emptydb-upgrade/Tests/upgrade.stable.out
--- a/sql/test/emptydb-upgrade/Tests/upgrade.stable.out
+++ b/sql/test/emptydb-upgrade/Tests/upgrade.stable.out
@@ -46,10 +46,15 @@ drop view if exists sys.dump_partition_t
drop view if exists sys.dump_create_users cascade;
drop view if exists sys.describe_tables cascade;
drop function if exists sys.get_remote_table_expressions(string, string)
cascade;
+drop function if exists sys.remote_table_credentials(string) cascade;
drop function if exists sys.sq(string) cascade;
+create table sys.remote_user_info (table_id int, username varchar(1024),
password varchar(256));
+create function sys.decypher (cypher string) returns string external name
sql.decypher;
+update sys.functions set system = true where system <> true and name =
'decypher' and schema_id = 2000 and type = 1;
+update sys._tables set system = true where system <> true and name =
'remote_user_info' and schema_id = 2000;
CREATE FUNCTION sys.SQ (s STRING) RETURNS STRING BEGIN RETURN '''' ||
sys.replace(s,'''','''''') || ''''; END;
CREATE FUNCTION sys.get_remote_table_expressions(s STRING, t STRING) RETURNS
STRING BEGIN
- RETURN SELECT ' ON ' || sys.SQ(uri) || ' WITH USER ' || sys.SQ(username) || '
ENCRYPTED PASSWORD ' || sys.SQ("hash") FROM sys.remote_table_credentials(s
||'.' || t);
+ RETURN SELECT ' ON ' || sys.SQ(tt.query) || ' WITH USER ' || sys.SQ(username)
|| ' ENCRYPTED PASSWORD ' || sys.SQ(sys.decypher("password")) FROM
sys.remote_user_info r, sys._tables tt, sys.schemas ss where tt.name = t and
ss.name = s and tt.schema_id = ss.id and r.table_id = tt.id;
END;
CREATE VIEW sys.describe_tables AS
SELECT
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
@@ -545,6 +545,7 @@ select 'null in fkeys.delete_action', de
[ "sys._tables", "sys", "queue", "create view sys.queue as
select * from sys.queue();", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
[ "sys._tables", "sys", "range_partitions", NULL, "TABLE",
true, "COMMIT", "WRITABLE", NULL ]
[ "sys._tables", "sys", "rejects", "create view sys.rejects as
select * from sys.rejects();", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
+[ "sys._tables", "sys", "remote_user_info", NULL, "TABLE",
true, "COMMIT", "WRITABLE", NULL ]
[ "sys._tables", "sys", "roles", "create view sys.roles as
select id, name, grantor from sys.auths a where a.name not in (select u.name
from sys.db_user_info u);", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
[ "sys._tables", "sys", "schemas", NULL, "TABLE", true,
"COMMIT", "WRITABLE", NULL ]
[ "sys._tables", "sys", "schemastorage", "create view
sys.\"schemastorage\" as select \"schema\", count(*) as \"storages\",
sum(columnsize) as columnsize, sum(heapsize) as heapsize, sum(hashes) as
hashsize, sum(\"imprints\") as imprintsize, sum(orderidx) as orderidxsize from
sys.\"storage\" group by \"schema\" order by \"schema\";", "VIEW", true,
"COMMIT", "WRITABLE", NULL ]
@@ -1173,6 +1174,9 @@ select 'null in fkeys.delete_action', de
[ "sys._columns", "rejects", "fldid", "int", 32, 0,
NULL, true, 1, NULL, NULL ]
[ "sys._columns", "rejects", "message", "clob", 0, 0,
NULL, true, 2, NULL, NULL ]
[ "sys._columns", "rejects", "input", "clob", 0, 0,
NULL, true, 3, NULL, NULL ]
+[ "sys._columns", "remote_user_info", "table_id", "int", 32,
0, NULL, true, 0, NULL, NULL ]
+[ "sys._columns", "remote_user_info", "username", "varchar",
1024, 0, NULL, true, 1, NULL, NULL ]
+[ "sys._columns", "remote_user_info", "password", "varchar",
256, 0, NULL, true, 2, NULL, NULL ]
[ "sys._columns", "roles", "id", "int", 32, 0, NULL,
true, 0, NULL, NULL ]
[ "sys._columns", "roles", "name", "varchar", 1024, 0,
NULL, true, 1, NULL, NULL ]
[ "sys._columns", "roles", "grantor", "int", 32, 0,
NULL, true, 2, NULL, NULL ]
@@ -1584,6 +1588,7 @@ select 'null in fkeys.delete_action', de
[ "sys.functions", "sys", "decade", "SYSTEM", "decade",
"mtime", "Internal C", "Scalar function", false, false, false,
false, NULL, "res_0", "int", 32, 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", "decade", "SYSTEM", "decade",
"mtime", "Internal C", "Scalar function", false, false, false,
false, NULL, "res_0", "int", 32, 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", "decade", "SYSTEM", "decade",
"mtime", "Internal C", "Scalar function", false, false, false,
false, NULL, "res_0", "int", 32, 0, "out", "arg_1",
"timestamptz", 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", "decypher", "SYSTEM", "create
function sys.decypher (cypher string) returns string external name
sql.decypher;", "sql", "MAL", "Scalar function", false, false,
false, true, NULL, "result", "clob", 0, 0, "out",
"cypher", "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", "degrees", "SYSTEM", "degrees",
"mmath", "Internal C", "Scalar function", false, false, false,
false, NULL, "res_0", "double", 53, 0, "out",
"arg_1", "double", 53, 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", "degrees", "SYSTEM", "degrees",
"mmath", "Internal C", "Scalar function", false, false, false,
false, NULL, "res_0", "real", 24, 0, "out", "arg_1",
"real", 24, 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", "deltas", "SYSTEM", "create
function sys.deltas (\"schema\" string) returns table (\"id\" int, \"segments\"
bigint, \"all\" bigint, \"inserted\" bigint, \"updates\" bigint, \"deletes\"
bigint, \"level\" int) external name \"sql\".\"deltas\";", "sql", "MAL",
"Function returning a table", false, false, false, true, NULL, "id",
"int", 32, 0, "out", "segments", "bigint", 64, 0,
"out", "all", "bigint", 64, 0, "out", "inserted",
"bigint", 64, 0, "out", "updates", "bigint", 64,
0, "out", "deletes", "bigint", 64, 0, "out",
"level", "int", 32, 0, "out", "schema", "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 ]
@@ -1645,7 +1650,7 @@ select 'null in fkeys.delete_action', de
[ "sys.functions", "sys", "generate_series", "SYSTEM", "create
function sys.generate_series(first tinyint, \"limit\" tinyint, stepsize
tinyint) returns table (value tinyint) external name generator.series;",
"generator", "MAL", "Function returning a table", false, false, false,
true, NULL, "value", "tinyint", 8, 0, "out",
"first", "tinyint", 8, 0, "in", "limit",
"tinyint", 8, 0, "in", "stepsize", "tinyint", 8,
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", "geometrytype", "SYSTEM", "create
function geometrytype(geom geometry) returns string external name
geom.\"GeometryType1\";", "geom", "MAL", "Scalar function", false,
false, false, true, NULL, "result", "clob", 0, 0, "out",
"geom", "geometry", 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", "get_merge_table_partition_expressions",
"SYSTEM", "create function sys.get_merge_table_partition_expressions(tid
int) returns string begin return select case when tp.table_id is not null then
' PARTITION BY ' || ifthenelse(bit_and(tp.type, 2) = 2, 'VALUES ', 'RANGE ') ||
case when bit_and(tp.type, 4) = 4 then 'ON ' || '(' || (select sys.dq(c.name)
|| ')' from sys.columns c where c.id = tp.column_id) else 'USING ' || '(' ||
tp.expression || ')' end else '' end from (values (tid)) t(id) left join
sys.table_partitions tp on t.id = tp.table_id; end;", "sql", "SQL", "Scalar
function", false, false, false, true, NULL, "result", "clob",
0, 0, "out", "tid", "int", 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, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL ]
-[ "sys.functions", "sys", "get_remote_table_expressions", "SYSTEM",
"create function sys.get_remote_table_expressions(s string, t string) returns
string begin return select ' ON ' || sys.sq(uri) || ' WITH USER ' ||
sys.sq(username) || ' ENCRYPTED PASSWORD ' || sys.sq(\"hash\") from
sys.remote_table_credentials(s ||'.' || t); end;", "sql", "SQL",
"Scalar function", false, false, false, true, NULL, "result",
"clob", 0, 0, "out", "s", "clob", 0, 0, "in", "t",
"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 ]
+[ "sys.functions", "sys", "get_remote_table_expressions", "SYSTEM",
"create function sys.get_remote_table_expressions(s string, t string) returns
string begin return select ' ON ' || sys.sq(tt.query) || ' WITH USER ' ||
sys.sq(username) || ' ENCRYPTED PASSWORD ' ||
sys.sq(sys.decypher(\"password\")) from sys.remote_user_info r, sys._tables tt,
sys.schemas ss where tt.name = t and ss.name = s and tt.schema_id = ss.id and
r.table_id = tt.id; end;", "sql", "SQL", "Scalar function", false,
false, false, true, NULL, "result", "clob", 0, 0, "out",
"s", "clob", 0, 0, "in", "t", "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 ]
[ "sys.functions", "sys", "get_type", "SYSTEM", "create
function get_type(info integer, format integer) returns string external name
geom.\"getType\";", "geom", "MAL", "Scalar function", false,
false, false, true, NULL, "result", "clob", 0, 0, "out",
"info", "int", 32, 0, "in", "format", "int", 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, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL ]
[ "sys.functions", "sys", "get_value_for", "SYSTEM",
"get_value", "sql", "Internal C", "Scalar function", false, false,
false, true, NULL, "res_0", "bigint", 64, 0, "out",
"arg_1", "char", 0, 0, "in", "arg_2", "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, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL ]
[ "sys.functions", "sys", "get_value_for", "SYSTEM",
"get_value", "sql", "Internal C", "Scalar function", false, false,
false, true, NULL, "res_0", "bigint", 64, 0, "out",
"arg_1", "clob", 0, 0, "in", "arg_2", "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 ]
@@ -1952,7 +1957,6 @@ select 'null in fkeys.delete_action', de
[ "sys.functions", "sys", "regexp_replace", "SYSTEM", "create
function sys.regexp_replace(ori string, pat string, rep string) returns string
begin return sys.regexp_replace(ori, pat, rep, ''); end;", "sql", "SQL",
"Scalar function", false, false, false, true, NULL, "result",
"clob", 0, 0, "out", "ori", "clob", 0, 0, "in", "pat",
"clob", 0, 0, "in", "rep", "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", "regexp_replace", "SYSTEM", "create
function sys.regexp_replace(ori string, pat string, rep string, flg string)
returns string external name pcre.replace;", "pcre", "MAL", "Scalar
function", false, false, false, true, NULL, "result", "clob",
0, 0, "out", "ori", "clob", 0, 0, "in", "pat", "clob",
0, 0, "in", "rep", "clob", 0, 0, "in", "flg", "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", "rejects", "SYSTEM", "create
function sys.rejects() returns table(rowid bigint, fldid int, \"message\"
string, \"input\" string) external name sql.copy_rejects;", "sql", "MAL",
"Function returning a table", false, false, false, true, NULL,
"rowid", "bigint", 64, 0, "out", "fldid", "int",
32, 0, "out", "message", "clob", 0, 0, "out",
"input", "clob", 0, 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 ]
-[ "sys.functions", "sys", "remote_table_credentials", "SYSTEM",
"create function sys.remote_table_credentials (tablename string) returns table
(\"uri\" string, \"username\" string, \"hash\" string) external name
sql.rt_credentials;", "sql", "MAL", "Function returning a table",
false, false, false, true, NULL, "uri", "clob", 0, 0, "out",
"username", "clob", 0, 0, "out", "hash", "clob", 0, 0,
"out", "tablename", "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", "repeat", "SYSTEM", "repeat",
"str", "Internal C", "Scalar function", false, false, false, true,
NULL, "res_0", "char", 0, 0, "out", "arg_1", "char",
0, 0, "in", "arg_2", "int", 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, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL ]
[ "sys.functions", "sys", "repeat", "SYSTEM", "repeat",
"str", "Internal C", "Scalar function", false, false, false, true,
NULL, "res_0", "clob", 0, 0, "out", "arg_1", "clob",
0, 0, "in", "arg_2", "int", 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, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL ]
[ "sys.functions", "sys", "repeat", "SYSTEM", "repeat",
"str", "Internal C", "Scalar function", false, false, false, true,
NULL, "res_0", "varchar", 0, 0, "out", "arg_1",
"varchar", 0, 0, "in", "arg_2", "int", 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, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL ]
@@ -2603,7 +2607,7 @@ select 'null in fkeys.delete_action', de
% .%1, .s1, .f1, .s2, .f2, .dt # table_name
% %1, name, name, name, name, dependency_type_name # name
% char, varchar, varchar, varchar, varchar,
varchar # type
-% 25, 3, 24, 3, 37, 9 # length
+% 25, 3, 17, 3, 37, 9 # length
[ "function used by function", "sys", "describe_type", "sys",
"describe_columns", "FUNCTION" ]
[ "function used by function", "sys", "dump_table_data", "sys",
"dump_database", "FUNCTION" ]
[ "function used by function", "sys", "dq", "sys", "dump_table_data",
"PROCEDURE" ]
@@ -2613,7 +2617,7 @@ select 'null in fkeys.delete_action', de
[ "function used by function", "sys", "prepare_esc", "sys",
"dump_table_data", "PROCEDURE" ]
[ "function used by function", "sys", "storage", "sys",
"dump_table_data", "PROCEDURE" ]
[ "function used by function", "sys", "dq", "sys",
"get_merge_table_partition_expressions", "FUNCTION" ]
-[ "function used by function", "sys", "remote_table_credentials", "sys",
"get_remote_table_expressions", "FUNCTION" ]
+[ "function used by function", "sys", "decypher", "sys",
"get_remote_table_expressions", "FUNCTION" ]
[ "function used by function", "sys", "sq", "sys",
"get_remote_table_expressions", "FUNCTION" ]
[ "function used by function", "sys", "ms_trunc", "sys", "ms_round",
"FUNCTION" ]
[ "function used by function", "sys", "dq", "sys", "prepare_esc",
"FUNCTION" ]
@@ -2673,6 +2677,9 @@ select 'null in fkeys.delete_action', de
[ "table used by function", "sys", "tables", "sys",
"dump_table_data", "PROCEDURE" ]
[ "table used by function", "sys", "columns", "sys",
"get_merge_table_partition_expressions", "FUNCTION" ]
[ "table used by function", "sys", "table_partitions", "sys",
"get_merge_table_partition_expressions", "FUNCTION" ]
+[ "table used by function", "sys", "_tables", "sys",
"get_remote_table_expressions", "FUNCTION" ]
+[ "table used by function", "sys", "remote_user_info", "sys",
"get_remote_table_expressions", "FUNCTION" ]
+[ "table used by function", "sys", "schemas", "sys",
"get_remote_table_expressions", "FUNCTION" ]
[ "table used by function", "sys", "spatial_ref_sys", "sys",
"getproj4", "FUNCTION" ]
[ "table used by function", "sys", "columns", "sys",
"storagemodelinit", "PROCEDURE" ]
[ "table used by function", "sys", "keys", "sys", "storagemodelinit",
"PROCEDURE" ]
@@ -2794,6 +2801,15 @@ select 'null in fkeys.delete_action', de
[ "column used by function", "sys", "table_partitions", "id", "sys",
"get_merge_table_partition_expressions", "FUNCTION" ]
[ "column used by function", "sys", "table_partitions", "table_id",
"sys", "get_merge_table_partition_expressions", "FUNCTION" ]
[ "column used by function", "sys", "table_partitions", "type", "sys",
"get_merge_table_partition_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "_tables", "id", "sys",
"get_remote_table_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "_tables", "name", "sys",
"get_remote_table_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "_tables", "query", "sys",
"get_remote_table_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "_tables", "schema_id", "sys",
"get_remote_table_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "remote_user_info", "password",
"sys", "get_remote_table_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "remote_user_info", "table_id",
"sys", "get_remote_table_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "remote_user_info", "username",
"sys", "get_remote_table_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "schemas", "id", "sys",
"get_remote_table_expressions", "FUNCTION" ]
+[ "column used by function", "sys", "schemas", "name", "sys",
"get_remote_table_expressions", "FUNCTION" ]
[ "column used by function", "sys", "spatial_ref_sys", "proj4text",
"sys", "getproj4", "FUNCTION" ]
[ "column used by function", "sys", "spatial_ref_sys", "srid", "sys",
"getproj4", "FUNCTION" ]
[ "column used by function", "sys", "columns", "name", "sys",
"storagemodelinit", "PROCEDURE" ]
diff --git a/sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out
b/sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out
--- a/sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out
+++ b/sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out
@@ -376,10 +376,15 @@ drop view if exists sys.dump_partition_t
drop view if exists sys.dump_create_users cascade;
drop view if exists sys.describe_tables cascade;
drop function if exists sys.get_remote_table_expressions(string, string)
cascade;
+drop function if exists sys.remote_table_credentials(string) cascade;
drop function if exists sys.sq(string) cascade;
+create table sys.remote_user_info (table_id int, username varchar(1024),
password varchar(256));
+create function sys.decypher (cypher string) returns string external name
sql.decypher;
+update sys.functions set system = true where system <> true and name =
'decypher' and schema_id = 2000 and type = 1;
+update sys._tables set system = true where system <> true and name =
'remote_user_info' and schema_id = 2000;
CREATE FUNCTION sys.SQ (s STRING) RETURNS STRING BEGIN RETURN '''' ||
sys.replace(s,'''','''''') || ''''; END;
CREATE FUNCTION sys.get_remote_table_expressions(s STRING, t STRING) RETURNS
STRING BEGIN
- RETURN SELECT ' ON ' || sys.SQ(uri) || ' WITH USER ' || sys.SQ(username) || '
ENCRYPTED PASSWORD ' || sys.SQ("hash") FROM sys.remote_table_credentials(s
||'.' || t);
+ RETURN SELECT ' ON ' || sys.SQ(tt.query) || ' WITH USER ' || sys.SQ(username)
|| ' ENCRYPTED PASSWORD ' || sys.SQ(sys.decypher("password")) FROM
sys.remote_user_info r, sys._tables tt, sys.schemas ss where tt.name = t and
ss.name = s and tt.schema_id = ss.id and r.table_id = tt.id;
END;
CREATE VIEW sys.describe_tables AS
SELECT
diff --git a/sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out
b/sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out
--- a/sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out
+++ b/sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out
@@ -370,10 +370,15 @@ drop view if exists sys.dump_partition_t
drop view if exists sys.dump_create_users cascade;
drop view if exists sys.describe_tables cascade;
drop function if exists sys.get_remote_table_expressions(string, string)
cascade;
+drop function if exists sys.remote_table_credentials(string) cascade;
drop function if exists sys.sq(string) cascade;
+create table sys.remote_user_info (table_id int, username varchar(1024),
password varchar(256));
+create function sys.decypher (cypher string) returns string external name
sql.decypher;
+update sys.functions set system = true where system <> true and name =
'decypher' and schema_id = 2000 and type = 1;
+update sys._tables set system = true where system <> true and name =
'remote_user_info' and schema_id = 2000;
CREATE FUNCTION sys.SQ (s STRING) RETURNS STRING BEGIN RETURN '''' ||
sys.replace(s,'''','''''') || ''''; END;
CREATE FUNCTION sys.get_remote_table_expressions(s STRING, t STRING) RETURNS
STRING BEGIN
- RETURN SELECT ' ON ' || sys.SQ(uri) || ' WITH USER ' || sys.SQ(username) || '
ENCRYPTED PASSWORD ' || sys.SQ("hash") FROM sys.remote_table_credentials(s
||'.' || t);
+ RETURN SELECT ' ON ' || sys.SQ(tt.query) || ' WITH USER ' || sys.SQ(username)
|| ' ENCRYPTED PASSWORD ' || sys.SQ(sys.decypher("password")) FROM
sys.remote_user_info r, sys._tables tt, sys.schemas ss where tt.name = t and
ss.name = s and tt.schema_id = ss.id and r.table_id = tt.id;
END;
CREATE VIEW sys.describe_tables AS
SELECT
diff --git a/sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
b/sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
--- a/sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
+++ b/sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
@@ -46,10 +46,15 @@ drop view if exists sys.dump_partition_t
drop view if exists sys.dump_create_users cascade;
drop view if exists sys.describe_tables cascade;
drop function if exists sys.get_remote_table_expressions(string, string)
cascade;
+drop function if exists sys.remote_table_credentials(string) cascade;
drop function if exists sys.sq(string) cascade;
+create table sys.remote_user_info (table_id int, username varchar(1024),
password varchar(256));
+create function sys.decypher (cypher string) returns string external name
sql.decypher;
+update sys.functions set system = true where system <> true and name =
'decypher' and schema_id = 2000 and type = 1;
+update sys._tables set system = true where system <> true and name =
'remote_user_info' and schema_id = 2000;
CREATE FUNCTION sys.SQ (s STRING) RETURNS STRING BEGIN RETURN '''' ||
sys.replace(s,'''','''''') || ''''; END;
CREATE FUNCTION sys.get_remote_table_expressions(s STRING, t STRING) RETURNS
STRING BEGIN
- RETURN SELECT ' ON ' || sys.SQ(uri) || ' WITH USER ' || sys.SQ(username) || '
ENCRYPTED PASSWORD ' || sys.SQ("hash") FROM sys.remote_table_credentials(s
||'.' || t);
+ RETURN SELECT ' ON ' || sys.SQ(tt.query) || ' WITH USER ' || sys.SQ(username)
|| ' ENCRYPTED PASSWORD ' || sys.SQ(sys.decypher("password")) FROM
sys.remote_user_info r, sys._tables tt, sys.schemas ss where tt.name = t and
ss.name = s and tt.schema_id = ss.id and r.table_id = tt.id;
END;
CREATE VIEW sys.describe_tables AS
SELECT
diff --git a/sql/test/testdb-upgrade/Tests/upgrade.stable.out
b/sql/test/testdb-upgrade/Tests/upgrade.stable.out
--- a/sql/test/testdb-upgrade/Tests/upgrade.stable.out
+++ b/sql/test/testdb-upgrade/Tests/upgrade.stable.out
@@ -46,10 +46,15 @@ drop view if exists sys.dump_partition_t
drop view if exists sys.dump_create_users cascade;
drop view if exists sys.describe_tables cascade;
drop function if exists sys.get_remote_table_expressions(string, string)
cascade;
+drop function if exists sys.remote_table_credentials(string) cascade;
drop function if exists sys.sq(string) cascade;
+create table sys.remote_user_info (table_id int, username varchar(1024),
password varchar(256));
+create function sys.decypher (cypher string) returns string external name
sql.decypher;
+update sys.functions set system = true where system <> true and name =
'decypher' and schema_id = 2000 and type = 1;
+update sys._tables set system = true where system <> true and name =
'remote_user_info' and schema_id = 2000;
CREATE FUNCTION sys.SQ (s STRING) RETURNS STRING BEGIN RETURN '''' ||
sys.replace(s,'''','''''') || ''''; END;
CREATE FUNCTION sys.get_remote_table_expressions(s STRING, t STRING) RETURNS
STRING BEGIN
- RETURN SELECT ' ON ' || sys.SQ(uri) || ' WITH USER ' || sys.SQ(username) || '
ENCRYPTED PASSWORD ' || sys.SQ("hash") FROM sys.remote_table_credentials(s
||'.' || t);
+ RETURN SELECT ' ON ' || sys.SQ(tt.query) || ' WITH USER ' || sys.SQ(username)
|| ' ENCRYPTED PASSWORD ' || sys.SQ(sys.decypher("password")) FROM
sys.remote_user_info r, sys._tables tt, sys.schemas ss where tt.name = t and
ss.name = s and tt.schema_id = ss.id and r.table_id = tt.id;
END;
CREATE VIEW sys.describe_tables AS
SELECT
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]