Add option force_initdb to PostgreSQL::Test::Cluster:init()

Michael Paquier <michael@paquier.xyz>

Commit: ff9e1e764fcce9a34467d614611a34d4d2a91b50
Author: Michael Paquier <michael@paquier.xyz>
Date: 2024-02-21T04:28:51Z
Releases: 17.0
Add option force_initdb to PostgreSQL::Test::Cluster:init()

This option is useful to bypass the default behavior of init() which
would create the data folder of a new cluster by copying it from a
template previously initdb'd, if any.  Copying the data folder is much
cheaper than running initdb, but some tests may want to force that.  For
example, one scenario of pg_combinebackup updated in this commit needs a
different system ID for two nodes.

Previously, this could only be achieved by unsetting
$ENV{'INITDB_TEMPLATE'}, which could become a problem in complex node
setups by making tests less efficient.

Author: Amul Sul
Reviewed-by: Robert Haas, Michael Paquier
Discussion: https://postgr.es/m/Zc1tX9lLonLGu6oH@paquier.xyz

Files

Discussion