]> granicus.if.org Git - postgresql/commitdiff
Ensure a few policies remain for pg_upgrade
authorStephen Frost <sfrost@snowman.net>
Mon, 28 Sep 2015 19:48:36 +0000 (15:48 -0400)
committerStephen Frost <sfrost@snowman.net>
Mon, 28 Sep 2015 19:48:36 +0000 (15:48 -0400)
To make sure that pg_dump/pg_restore function properly with RLS
policies, arrange to have a few of them left around at the end of the
regression tests.

Back-patch to 9.5 where RLS was added.

src/test/regress/expected/rowsecurity.out
src/test/regress/output/misc.source
src/test/regress/sql/rowsecurity.sql

index 9d3540fb1ea68a969e7d1763a0db03377d6d914b..54091e5dede16c6c9c6b8bba430c1810b7305746 100644 (file)
@@ -3026,3 +3026,12 @@ DROP USER rls_regress_user2;
 DROP USER rls_regress_exempt_user;
 DROP ROLE rls_regress_group1;
 DROP ROLE rls_regress_group2;
+-- Arrange to have a few policies left over, for testing
+-- pg_dump/pg_restore
+CREATE SCHEMA rls_regress_schema;
+CREATE TABLE rls_tbl (c1 int);
+ALTER TABLE rls_tbl ENABLE ROW LEVEL SECURITY;
+CREATE POLICY p1 ON rls_tbl USING (c1 > 5);
+CREATE POLICY p2 ON rls_tbl FOR SELECT USING (c1 <= 3);
+CREATE POLICY p3 ON rls_tbl FOR UPDATE USING (c1 <= 3) WITH CHECK (c1 > 5);
+CREATE POLICY p4 ON rls_tbl FOR DELETE USING (c1 <= 3);
index 9eedb363d06be9602d35d90ff68bb84d7b923c7e..441476381886bd00e73fd6ccff831de6579d1501 100644 (file)
@@ -671,6 +671,7 @@ SELECT user_relns() AS user_relns
  random_tbl
  real_city
  reltime_tbl
+ rls_tbl
  road
  shighway
  slow_emp4000
@@ -708,7 +709,7 @@ SELECT user_relns() AS user_relns
  tvvmv
  varchar_tbl
  xacttest
-(130 rows)
+(131 rows)
 
 SELECT name(equipment(hobby_construct(text 'skywalking', text 'mer')));
  name 
index 933c83e5579a19098e2b6a6fca5272884b24022a..6ed0daf345f7091040c0230b49ce20f0c5c957f0 100644 (file)
@@ -1307,3 +1307,13 @@ DROP USER rls_regress_user2;
 DROP USER rls_regress_exempt_user;
 DROP ROLE rls_regress_group1;
 DROP ROLE rls_regress_group2;
+
+-- Arrange to have a few policies left over, for testing
+-- pg_dump/pg_restore
+CREATE SCHEMA rls_regress_schema;
+CREATE TABLE rls_tbl (c1 int);
+ALTER TABLE rls_tbl ENABLE ROW LEVEL SECURITY;
+CREATE POLICY p1 ON rls_tbl USING (c1 > 5);
+CREATE POLICY p2 ON rls_tbl FOR SELECT USING (c1 <= 3);
+CREATE POLICY p3 ON rls_tbl FOR UPDATE USING (c1 <= 3) WITH CHECK (c1 > 5);
+CREATE POLICY p4 ON rls_tbl FOR DELETE USING (c1 <= 3);