2024年2月6日(火) 19:54 Peter Eisentraut <pe...@eisentraut.org>: > > I'm proposing here a way to pass extra options to initdb when run > internally during test setup in pg_regress or > PostgreSQL::Test::Cluster's init (which covers just about all test > suites other than initdb's own tests). > > For example: > > make check PG_TEST_INITDB_EXTRA_OPTS='-k -c work_mem=50MB' > > We currently document at [0] a way to pass custom server settings to the > tests via PGOPTIONS. But this only works for pg_regress and only for > options that can be changed at run time. My proposal can set initdb > options, and since initdb has the -c option now, it can set any GUC > parameter as well. > > I think this can be useful for a wide variety of uses, like running all > tests with checksums enabled, or with JIT enabled, or with different GUC > settings, or with different locale settings. (The existing pg_regress > --no-locale option is essentially a special case of this, but it only > provides one particular locale setting, not things like changing the > default provider etc.) > > Of course, not all tests are going to pass with arbitrary options, but > it is useful to run this against specific test suites. > > This patch also updates the documentation at [0] to explain the new > method and distinguish it from the previously documented methods.
+1 for this, I recently ran into an issue with the regression tests for an extension where it would have been very useful to provide some initdb options. Patch works as expected after a quick initial test. Regards Ian Barwick