]> granicus.if.org Git - postgresql/commitdiff
Fix broken wait-for-previous-process-to-exit loop in regression test.
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 2 Dec 2016 22:23:54 +0000 (17:23 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 2 Dec 2016 22:23:54 +0000 (17:23 -0500)
Must do pg_stat_clear_snapshot() inside test's loop, or our snapshot of
pg_stat_activity will never change :-(.  Thinko in b3427dade -- evidently
my workstation never really iterated the loop in testing.  Per buildfarm.

src/test/modules/test_extensions/expected/test_extensions.out
src/test/modules/test_extensions/sql/test_extensions.sql

index a24820e7359ed62e4867d5fdc9ebdc01ecad1fad..ba8b90e7426f340d9aa175a338054b5545699909 100644 (file)
@@ -106,7 +106,7 @@ do 'declare c int = 0;
 begin
   while (select count(*) from pg_stat_activity where pid = '
     :'oldpid'
-  ') > 0 loop c := c + 1; end loop;
+  ') > 0 loop c := c + 1; perform pg_stat_clear_snapshot(); end loop;
   raise log ''test_extensions looped % times'', c;
 end';
 -- extension should now contain no temp objects
index 5e884d187f3287feb572f167f9e9568406f83a28..0bfc5592953351becc0df8166ac3c69f4e02dcc4 100644 (file)
@@ -55,7 +55,7 @@ do 'declare c int = 0;
 begin
   while (select count(*) from pg_stat_activity where pid = '
     :'oldpid'
-  ') > 0 loop c := c + 1; end loop;
+  ') > 0 loop c := c + 1; perform pg_stat_clear_snapshot(); end loop;
   raise log ''test_extensions looped % times'', c;
 end';