1
0
mirror of https://github.com/postgres/postgres.git synced 2025-05-01 01:04:50 +03:00

Improve generated_stored test

The test table names gtest11s and gtest12s were way originally chosen
to signify "stored", when the idea was to have virtual columns in the
same test file.  This is no longer the idea, so this naming is
irrelevant.  (The upcoming feature of virtual generated columns will
have a test file that is initially a copy of generated_stored.sql, and
this random difference will be even more annoying then.)  Clean this
up by dropping the suffix.

Discussion: https://www.postgresql.org/message-id/flat/a368248e-69e4-40be-9c07-6c3b5880b0a6@eisentraut.org
This commit is contained in:
Peter Eisentraut 2025-01-21 08:13:40 +01:00
parent fb9f955025
commit 44b61efb79
2 changed files with 22 additions and 22 deletions

View File

@ -534,18 +534,18 @@ ALTER TABLE gtest10a DROP COLUMN b;
INSERT INTO gtest10a (a) VALUES (1); INSERT INTO gtest10a (a) VALUES (1);
-- privileges -- privileges
CREATE USER regress_user11; CREATE USER regress_user11;
CREATE TABLE gtest11s (a int PRIMARY KEY, b int, c int GENERATED ALWAYS AS (b * 2) STORED); CREATE TABLE gtest11 (a int PRIMARY KEY, b int, c int GENERATED ALWAYS AS (b * 2) STORED);
INSERT INTO gtest11s VALUES (1, 10), (2, 20); INSERT INTO gtest11 VALUES (1, 10), (2, 20);
GRANT SELECT (a, c) ON gtest11s TO regress_user11; GRANT SELECT (a, c) ON gtest11 TO regress_user11;
CREATE FUNCTION gf1(a int) RETURNS int AS $$ SELECT a * 3 $$ IMMUTABLE LANGUAGE SQL; CREATE FUNCTION gf1(a int) RETURNS int AS $$ SELECT a * 3 $$ IMMUTABLE LANGUAGE SQL;
REVOKE ALL ON FUNCTION gf1(int) FROM PUBLIC; REVOKE ALL ON FUNCTION gf1(int) FROM PUBLIC;
CREATE TABLE gtest12s (a int PRIMARY KEY, b int, c int GENERATED ALWAYS AS (gf1(b)) STORED); CREATE TABLE gtest12 (a int PRIMARY KEY, b int, c int GENERATED ALWAYS AS (gf1(b)) STORED);
INSERT INTO gtest12s VALUES (1, 10), (2, 20); INSERT INTO gtest12 VALUES (1, 10), (2, 20);
GRANT SELECT (a, c) ON gtest12s TO regress_user11; GRANT SELECT (a, c) ON gtest12 TO regress_user11;
SET ROLE regress_user11; SET ROLE regress_user11;
SELECT a, b FROM gtest11s; -- not allowed SELECT a, b FROM gtest11; -- not allowed
ERROR: permission denied for table gtest11s ERROR: permission denied for table gtest11
SELECT a, c FROM gtest11s; -- allowed SELECT a, c FROM gtest11; -- allowed
a | c a | c
---+---- ---+----
1 | 20 1 | 20
@ -554,7 +554,7 @@ SELECT a, c FROM gtest11s; -- allowed
SELECT gf1(10); -- not allowed SELECT gf1(10); -- not allowed
ERROR: permission denied for function gf1 ERROR: permission denied for function gf1
SELECT a, c FROM gtest12s; -- allowed SELECT a, c FROM gtest12; -- allowed
a | c a | c
---+---- ---+----
1 | 30 1 | 30
@ -564,9 +564,9 @@ SELECT a, c FROM gtest12s; -- allowed
RESET ROLE; RESET ROLE;
DROP FUNCTION gf1(int); -- fail DROP FUNCTION gf1(int); -- fail
ERROR: cannot drop function gf1(integer) because other objects depend on it ERROR: cannot drop function gf1(integer) because other objects depend on it
DETAIL: column c of table gtest12s depends on function gf1(integer) DETAIL: column c of table gtest12 depends on function gf1(integer)
HINT: Use DROP ... CASCADE to drop the dependent objects too. HINT: Use DROP ... CASCADE to drop the dependent objects too.
DROP TABLE gtest11s, gtest12s; DROP TABLE gtest11, gtest12;
DROP FUNCTION gf1(int); DROP FUNCTION gf1(int);
DROP USER regress_user11; DROP USER regress_user11;
-- check constraints -- check constraints

View File

@ -265,26 +265,26 @@ INSERT INTO gtest10a (a) VALUES (1);
-- privileges -- privileges
CREATE USER regress_user11; CREATE USER regress_user11;
CREATE TABLE gtest11s (a int PRIMARY KEY, b int, c int GENERATED ALWAYS AS (b * 2) STORED); CREATE TABLE gtest11 (a int PRIMARY KEY, b int, c int GENERATED ALWAYS AS (b * 2) STORED);
INSERT INTO gtest11s VALUES (1, 10), (2, 20); INSERT INTO gtest11 VALUES (1, 10), (2, 20);
GRANT SELECT (a, c) ON gtest11s TO regress_user11; GRANT SELECT (a, c) ON gtest11 TO regress_user11;
CREATE FUNCTION gf1(a int) RETURNS int AS $$ SELECT a * 3 $$ IMMUTABLE LANGUAGE SQL; CREATE FUNCTION gf1(a int) RETURNS int AS $$ SELECT a * 3 $$ IMMUTABLE LANGUAGE SQL;
REVOKE ALL ON FUNCTION gf1(int) FROM PUBLIC; REVOKE ALL ON FUNCTION gf1(int) FROM PUBLIC;
CREATE TABLE gtest12s (a int PRIMARY KEY, b int, c int GENERATED ALWAYS AS (gf1(b)) STORED); CREATE TABLE gtest12 (a int PRIMARY KEY, b int, c int GENERATED ALWAYS AS (gf1(b)) STORED);
INSERT INTO gtest12s VALUES (1, 10), (2, 20); INSERT INTO gtest12 VALUES (1, 10), (2, 20);
GRANT SELECT (a, c) ON gtest12s TO regress_user11; GRANT SELECT (a, c) ON gtest12 TO regress_user11;
SET ROLE regress_user11; SET ROLE regress_user11;
SELECT a, b FROM gtest11s; -- not allowed SELECT a, b FROM gtest11; -- not allowed
SELECT a, c FROM gtest11s; -- allowed SELECT a, c FROM gtest11; -- allowed
SELECT gf1(10); -- not allowed SELECT gf1(10); -- not allowed
SELECT a, c FROM gtest12s; -- allowed SELECT a, c FROM gtest12; -- allowed
RESET ROLE; RESET ROLE;
DROP FUNCTION gf1(int); -- fail DROP FUNCTION gf1(int); -- fail
DROP TABLE gtest11s, gtest12s; DROP TABLE gtest11, gtest12;
DROP FUNCTION gf1(int); DROP FUNCTION gf1(int);
DROP USER regress_user11; DROP USER regress_user11;