Repair two portability oversights of new test
authorAlvaro Herrera <[email protected]>
Thu, 30 Sep 2021 13:01:03 +0000 (10:01 -0300)
committerAlvaro Herrera <[email protected]>
Thu, 30 Sep 2021 13:01:03 +0000 (10:01 -0300)
First, as pointed out by Tom Lane and Michael Paquier, I failed to
realize that Windows' PostgresNode needs an extra pg_hba.conf line
(added by PostgresNode->set_replication_conf, called internally by
->init() when 'allows_streaming=>1' is given -- but I purposefully
omitted that).  I think a good fix should be to have nodes with only
'has_archiving=>1' set up for replication too, but that's a bigger
discussion.  Fix it by calling ->set_replication_conf, which is not
unprecedented, as pointed out by Andrew Dunstan.

I also forgot to uncomment a ->finish() call for a pumpable IPC::Run
file descriptor.  Apparently this is innocuous in almost all platforms.

Backpatch to 14.  The older branches were added this file too, but not
this particular part of the test.

Discussion: https://postgr.es/m/3000074.1632947632@sss.pgh.pa.us
Discussion: https://postgr.es/m/[email protected]

src/test/recovery/t/026_overwrite_contrecord.pl

index 64611e9506892290d6cc8cb888acf07fa9bcf6d0..acf9bd08d1bd53e219da68f795a1f4059d68fed8 100644 (file)
@@ -101,6 +101,7 @@ $node = PostgresNode->new('primary2');
 $node->init(
    has_archiving => 1,
    extra         => ['--wal-segsize=1']);
+$node->set_replication_conf;
 
 # Note: consistent use of forward slashes here avoids any escaping problems
 # that arise from use of backslashes. That means we need to double-quote all
@@ -181,7 +182,7 @@ $node->poll_query_until(
 
 # Now crash the node with the transaction open
 $node->stop('immediate');
-#$h->finish();
+$h->finish();
 $node->start;
 $node->safe_psql('postgres', 'create table witness (a int);');
 $node->safe_psql('postgres', 'insert into witness values (42)');