I'm a little bit worried about this whole discussion. We have half a
dozen supposed experts working on a 10-line shell script to do WAL
archiving, and there is still
- disagreement
- uncertainty
- bugs
How is a normal user supposed to do this?
That aside, I disagree with the premise for this script. It doesn't do
anything more than the typical inline examples we give. The additional
error reporting could be considered useful, but cp is perfectly capable
of reporting these errors itself, and getting in the way of that just
loses information and introduces race conditions. But if we are going
to provide a separate shell script, we should at least offer some
additional value, such as addressing the partial copy problem. But I
think that's not very easy to do in portable shell.
I think what we should do is write a wrapper program in C that covers
all the bases, support all platforms, and supports a handful of the most
commonly used copy methods (cp, scp, etc. + compression). Then everyone
can just use that and doesn't have to figure all these things out from
scratch every time.