> On Mar 31, 2021, at 1:05 PM, Andrew Dunstan <andrew@dunslane.net> wrote:
>
>
> On 3/31/21 3:48 PM, Alvaro Herrera wrote:
>> On 2021-Mar-31, Mark Dilger wrote:
>>
>>> PostgresNode::start() doesn't work for servers older than version 10,
>>> either. If I hack that function to sleep until the postmaster.pid
>>> file exists, it works, but that is really ugly and is just to prove to
>>> myself that it is a timing issue. There were a few commits in the
>>> version 10 development cycle (cf, commit
>>> f13ea95f9e473a43ee4e1baeb94daaf83535d37c) which changed how pg_ctl
>>> works, though I haven't figured out yet exactly what the interaction
>>> with PostgresNode would be. I'll keep looking.
>> Do you need to do "pg_ctl -w" perhaps?
>
>
>
> Probably. The buildfarm does this unconditionally and has done for a
> very long time, so maybe we don't need a version test for it.
I put a version test for this and it works for me. I guess you could do it unconditionally, if you want, but the
conditionis just:
- TestLib::system_or_bail('pg_ctl', '-D', $pgdata, '-l', $logfile,
+ TestLib::system_or_bail('pg_ctl',
+ $self->older_than_version('10') ? '-w' : (),
+ '-D', $pgdata, '-l', $logfile,
'restart');
—
Mark Dilger
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company