On 06.07.22 15:21, Andres Freund wrote:
Here is my rough assessment of where we are with this patch set:

08b4330ded prereq: deal with \ paths in basebackup_to_shell tests.

This still needs clarification, per my previous review.
Hm. I thought I had explained that bit, but apparently not. Well, it's pretty
simple - without this, the test fail on windows for me, as soon as one of the
binaries is in a directory with spaces (which is common on windows). Iimagine
what happens with e.g.
   qq{$gzip --fast > "$escaped_backup_path\\\\%f.gz"}
if $gzip contains spaces.


This doesn't happen currently on CI because nothing runs these tests on
windows yet.

Hmm, maybe this patch looked different the last time I saw it. I see your point.

The quoting of "$gzip" is clearly necessary.

What about the backslash replacements s{\\}{/}g ? Is that also required for passing the path through the shell? If so, the treatment of $tar in that way doesn't seem necessary, since that doesn't get called through an intermediate shell. (That would then also explain why $gzip in the pg_basebackup tests doesn't require that treatment, which had previously confused me.)

If my understanding of this is correct, then I suggest:

1. Add a comment to the $gzip =~ s{\\}{/}g ... line.
2. Remove the $tar =~ s{\\}{/}g ... line.
3. Backpatch to PG15.


Reply via email to