Re: pg_basebackup exit codes - Mailing list pgsql-general

From Magnus Hagander
Subject Re: pg_basebackup exit codes
Date
Msg-id CABUevEwauKzS-tb_ho-wcjWRq2iW5K=Z_=2C4C--aXMEioj8Qw@mail.gmail.com
Whole thread Raw
In response to pg_basebackup exit codes  (John Donath <John.Donath@detron.nl>)
Responses RE: pg_basebackup exit codes
List pgsql-general


On Mon, Aug 19, 2019 at 12:18 PM John Donath <John.Donath@detron.nl> wrote:

Hi,

 

I was unpleasantly surprised to see that pg_basebackup will return a zero (Success) exit code even when it has actually failed like below:

 

pg_basebackup: could not write to compressed file "/var/lib/pgsql/10/inst1/backup/cust-pg02_inst1_Fri_20190816/base.tar.gz": No space left on device

pg_basebackup: removing data directory "/var/lib/pgsql/10/inst1/backup/cust-pg02_inst1_Fri_20190816"

 

A reliable exit code is of great importance in backup scripts using a statement like below:

 

pg_basebackup -D ${backup_dest} -Ft -z 2>&1 | tee -a ${log_file}; rv=$?

[ $rv -eq 0 ] || error "pg_basebackup failed with rcode $rv; also see ${log_file}"

 

Pg_basebackup version: (PostgreSQL) 10.10

 

Anybody else encountering this problem?

 


I think your problem is that you are looking at the exit code from "tee" and not from pg_basebackup. If you are using bash, you can look at something like $PIPESTATUS to get the exit code from the actual comman dbefore the pipe. Or you can try removing the tee command to verify if this is indeed where the problem is coming from.


--

pgsql-general by date:

Previous
From: Ron
Date:
Subject: Re: postmaster utilization
Next
From: John Donath
Date:
Subject: RE: pg_basebackup exit codes