Re: somewhat wrong archive_command example
От | Bruce Momjian |
---|---|
Тема | Re: somewhat wrong archive_command example |
Дата | |
Msg-id | 20120825230755.GE10814@momjian.us обсуждение исходный текст |
Ответ на | Re: somewhat wrong archive_command example (Peter Eisentraut <peter_e@gmx.net>) |
Ответы |
Re: somewhat wrong archive_command example
|
Список | pgsql-docs |
On Fri, Aug 17, 2012 at 03:51:44PM -0400, Peter Eisentraut wrote: > On 8/15/12 9:13 PM, Bruce Momjian wrote: > >>Few more suggestions/nitpicks: > >> 1.) IMO it's more logical to put the test for whether the $ARCHIVE > >>directory exists before the test whether ${ARCHIVE}/${FILE} exists. > >> 2.) I think the error code reporting here is not sound: > >> > >>cp ${FULLPATH} ${ARCHIVE}/${FILE} > >>if [ $? -ne 0 ] ; then > >> echo $0 Archive copy of ${FILE} failed with error $? >&2 > >> > >>at least on my OS X machine, that echo produces a message like > >>"./local_backup_script.sh Archive copy of failed with error 0", I > >>guess since $? gets reset to 0 after that if-statement. You can use a > >>temporary variable like $ERRCODE=$? to get around this. > > > >I have made all the suggestions posted and would like to add the > >attached script to our documentation as a simple example. > > Btw., is anyone else concerned about using plain cp for this? If > the cp fails half-way, it leaves a partial file around, but > subsequent file existence checks will find the file OK and skip it. > > I have occasionally used some combination of mktemp + cp + mv, which > seems to work around this problem. I am unclear why the script returns success if the file already exists --- seems if the file exists, we should throw an error, like we have always done with cp -i < /dev/null. Updated version attached. Another option in this case would be to re-issue the copy. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. +
Вложения
В списке pgsql-docs по дате отправления: