Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Avoid rare race condition in privileges.sql regression test.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 16 Oct 2018 17:56:58 +0000 (13:56 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 16 Oct 2018 17:56:58 +0000 (13:56 -0400)
We created a temp table, then switched to a new session, leaving
the old session to clean up its temp objects in background.  If that
took long enough, the eventual attempt to drop the user that owns
the temp table could fail, as exhibited today by sidewinder.
Fix by dropping the temp table explicitly when we're done with it.

It's been like this for quite some time, so back-patch to all
supported branches.

Report: https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=sidewinder&dt=2018-10-16%2014%3A45%3A00

src/test/regress/expected/privileges.out
src/test/regress/sql/privileges.sql

index 33f8e25bfade101cace6a3df81e8751f46274b6d..016cb8b4a502512ea2d30283cca34011301a8163 100644 (file)
@@ -1136,6 +1136,7 @@ select has_column_privilege('mytable',2::int2,'select');
  
 (1 row)
 
+drop table mytable;
 -- Grant options
 SET SESSION AUTHORIZATION regress_user1;
 CREATE TABLE atest4 (a int);
index f587ba3b6dfa28aebae4c02d0c09f83868c22cda..ccccfb7d481c902c664afc8b87d893401845b735 100644 (file)
@@ -706,6 +706,7 @@ select has_column_privilege('mytable','........pg.dropped.2........','select');
 select has_column_privilege('mytable',2::int2,'select');
 revoke select on table mytable from regress_user3;
 select has_column_privilege('mytable',2::int2,'select');
+drop table mytable;
 
 -- Grant options