mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	This reverts a sequence of commits, implementing features related to logical decoding and replication of sequences: -0da92dc530-80901b3291-b779d7d8fd-d5ed9da41d-a180c2b34d-75b1521dae-2d2232933b-002c9dd97a-05843b1aa4The implementation has issues, mostly due to combining transactional and non-transactional behavior of sequences. It's not clear how this could be fixed, but it'll require reworking significant part of the patch. Discussion: https://postgr.es/m/95345a19-d508-63d1-860a-f5c2f41e8d40@enterprisedb.com
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			RPMSpec
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			RPMSpec
		
	
	
	
	
	
# Force usage of ondisk decoding snapshots to test that code path.
 | 
						|
setup
 | 
						|
{
 | 
						|
    DROP TABLE IF EXISTS do_write;
 | 
						|
    CREATE TABLE do_write(id serial primary key);
 | 
						|
}
 | 
						|
 | 
						|
teardown
 | 
						|
{
 | 
						|
    DROP TABLE do_write;
 | 
						|
    SELECT 'stop' FROM pg_drop_replication_slot('isolation_slot');
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
session "s1"
 | 
						|
setup { SET synchronous_commit=on; }
 | 
						|
 | 
						|
step "s1init" {SELECT 'init' FROM pg_create_logical_replication_slot('isolation_slot', 'test_decoding');}
 | 
						|
step "s1start" {SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', 'false');}
 | 
						|
step "s1insert" { INSERT INTO do_write DEFAULT VALUES; }
 | 
						|
step "s1checkpoint" { CHECKPOINT; }
 | 
						|
step "s1alter" { ALTER TABLE do_write ADD COLUMN addedbys1 int; }
 | 
						|
 | 
						|
session "s2"
 | 
						|
setup { SET synchronous_commit=on; }
 | 
						|
 | 
						|
step "s2b" { BEGIN; }
 | 
						|
step "s2txid" { SELECT pg_current_xact_id() IS NULL; }
 | 
						|
step "s2alter" { ALTER TABLE do_write ADD COLUMN addedbys2 int; }
 | 
						|
step "s2c" { COMMIT; }
 | 
						|
 | 
						|
 | 
						|
session "s3"
 | 
						|
setup { SET synchronous_commit=on; }
 | 
						|
 | 
						|
step "s3b" { BEGIN; }
 | 
						|
step "s3txid" { SELECT pg_current_xact_id() IS NULL; }
 | 
						|
step "s3c" { COMMIT; }
 | 
						|
 | 
						|
# Force usage of ondisk snapshot by starting and not finishing a
 | 
						|
# transaction with an assigned xid after consistency has been
 | 
						|
# reached. In combination with a checkpoint forcing a snapshot to be
 | 
						|
# written and a new restart point computed that'll lead to the usage
 | 
						|
# of the snapshot.
 | 
						|
permutation "s2b" "s2txid" "s1init" "s3b" "s3txid" "s2alter" "s2c" "s2b" "s2txid" "s3c" "s2c" "s1insert" "s1checkpoint" "s1start" "s1insert" "s1alter" "s1insert" "s1start"
 |