On 9/16/21 8:44 PM, Michael Paquier wrote: > On Fri, Sep 17, 2021 at 08:08:44AM +0900, Michael Paquier wrote: >> I am not completely sure what's going on here yet, so I'll just switch >> the test to be skipped when Msys is involved for now. That should be >> enough to bring back those machines to green. > So, after drinking down a coffee, I have remembered the difference > between the Msys and native perls when it comes to IPC::Run: > - Msys perl generates \r\n. > - Native perl generates \n. > > We have already a couple of places where we filter that out, like > PostgresNode::psql or slurp_file. But we are missing some spots > before calling like() for outputs generated by IPC::Run. I have > tracked all those places with the attached, and I think that this > should take care of the failure seen here while preventing future > problems. > > Any thoughts?
The fixups for command_checks_all should go before the loops, not inside them. I would probably add a single line like this just after the call that checks the status: foreach ($stderr, $stdout) { s/\r\n/\n/g if $Config{osname} eq 'msys'; } although maybe perltidy would reformat that. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com