Changeset: 43b1645251ff for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/43b1645251ff Modified Files: sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128 sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64 sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128 sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/testdb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-previous-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-previous-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out.32bit sql/test/testdb-previous-upgrade/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade/Tests/upgrade.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128 Branch: default Log Message:
Approve upgrade outputs for new system table sys.fkey_actions and view sys.fkeys diffs (truncated from 1102 to 300 lines): diff --git a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 --- a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 +++ b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.int128 @@ -5756,4 +5756,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; diff --git a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128 b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128 --- a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128 +++ b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128 @@ -5756,4 +5756,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; 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 @@ -5161,4 +5161,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; diff --git a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.32bit b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.32bit --- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.32bit +++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.32bit @@ -5161,4 +5161,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; diff --git a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128 b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128 --- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128 +++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.int128 @@ -5827,4 +5827,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; diff --git a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64 b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64 --- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64 +++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64 @@ -5161,4 +5161,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; diff --git a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128 b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128 --- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128 +++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128 @@ -5827,4 +5827,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; diff --git a/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128 b/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128 --- a/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128 +++ b/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.stable.out.int128 @@ -5756,4 +5756,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; 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 @@ -5161,4 +5161,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; diff --git a/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.32bit b/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.32bit --- a/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.32bit +++ b/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.32bit @@ -5161,4 +5161,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); +INSERT INTO sys.fkey_actions (action_id, action_name) VALUES + (0, 'NO ACTION'), + (1, 'CASCADE'), + (2, 'RESTRICT'), + (3, 'SET NULL'), + (4, 'SET DEFAULT'); +ALTER TABLE sys.fkey_actions SET READ ONLY; +GRANT SELECT ON sys.fkey_actions TO PUBLIC; +CREATE VIEW sys.fkeys AS +SELECT id, table_id, type, name, rkey, update_action_id, upd.action_name as update_action, delete_action_id, del.action_name as delete_action FROM ( + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM sys.keys WHERE type = 2 + UNION ALL + SELECT id, table_id, type, name, rkey, cast((("action" >> 8) & 255) as smallint) as update_action_id, cast(("action" & 255) as smallint) AS delete_action_id FROM tmp.keys WHERE type = 2 +) AS fks +JOIN sys.fkey_actions upd ON fks.update_action_id = upd.action_id +JOIN sys.fkey_actions del ON fks.delete_action_id = del.action_id; +GRANT SELECT ON sys.fkeys TO PUBLIC; +update sys._tables set system = true where name in ('fkey_actions', 'fkeys') AND schema_id = 2000; diff --git a/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128 b/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128 --- a/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128 +++ b/sql/test/emptydb-previous-upgrade/Tests/upgrade.stable.out.int128 @@ -5827,4 +5827,25 @@ create procedure sys.vacuum(sname string create procedure sys.stop_vacuum(sname string, tname string, cname string) external name sql.stop_vacuum; update sys.functions set system = true where system <> true and name in ('vacuum', 'stop_vacuum') and schema_id = 2000 and type = 2; +CREATE TABLE sys.fkey_actions ( + action_id SMALLINT NOT NULL PRIMARY KEY, + action_name VARCHAR(15) NOT NULL); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list