mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-31 00:03:57 -04:00 
			
		
		
		
	Fix two-phase commit test for recovery mode
The original code had a race condition because it never ensured the standby was caught up before proceeding; add a wait similar to every other place that does this. Author: Michaël Paquier Discussion: https://postgr.es/m/CAB7nPqTm9p+LCm1mVJYvgpwagRK+uibT-pKq0O2-paOWxT62jw@mail.gmail.com
This commit is contained in:
		
							parent
							
								
									a6979c3a68
								
							
						
					
					
						commit
						89c59b742a
					
				| @ -331,6 +331,14 @@ $cur_master->psql( | ||||
| 	CHECKPOINT; | ||||
| 	COMMIT PREPARED 'xact_009_13';"); | ||||
| 
 | ||||
| # Ensure that last transaction is replayed on standby. | ||||
| my $cur_master_lsn = | ||||
| 	$cur_master->safe_psql('postgres', "SELECT pg_current_wal_lsn()"); | ||||
| my $caughtup_query = | ||||
| 	"SELECT '$cur_master_lsn'::pg_lsn <= pg_last_wal_replay_lsn()"; | ||||
| $cur_standby->poll_query_until('postgres', $caughtup_query) | ||||
|   or die "Timed out while waiting for standby to catch up"; | ||||
| 
 | ||||
| $cur_standby->psql( | ||||
| 	'postgres', | ||||
| 	"SELECT count(*) FROM t_009_tbl2", | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user