Re: Confusing error message with too-large file in pg_basebackup - Mailing list pgsql-bugs

From Michael Paquier
Subject Re: Confusing error message with too-large file in pg_basebackup
Date
Msg-id CAB7nPqQjk-KYXfJWYKnySM_k14-5JsU0dEJt+q9ch+X0qbg1SA@mail.gmail.com
Whole thread Raw
In response to Confusing error message with too-large file in pg_basebackup  (Josh Berkus <josh@agliodbs.com>)
Responses Re: Confusing error message with too-large file in pg_basebackup  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
On Fri, Nov 20, 2015 at 9:37 AM, Josh Berkus <josh@agliodbs.com> wrote:
> pg_basebackup: could not get transaction log end position from server:
> ERROR:  archive member "core" too large for tar format

That's a backend-side error.

> This was very confusing to the user, because they weren't requesting tar
> format, and even setting -Fp got the same error message.  I can only
> hypothesize that tar is used somewhere under the hood.

Exactly, when a base backup is taken through the replication protocol,
backend always sends it in tar format for performance reasons. It is
then up to pg_basebackup to decide if the output should be untared or
not.

> pg_basebackup doesn't need to work under these circumstances, but maybe
> we could give a less baffling error message?

We would need to let the backend know about the output format expected
by the caller of BASE_BACKUP by extending the command in the
replication protocol. It does not sound like a good idea to me just to
make some potential error messages more verbose.
--
Michael

pgsql-bugs by date:

Previous
From: Josh Berkus
Date:
Subject: Confusing error message with too-large file in pg_basebackup
Next
From: Tom Lane
Date:
Subject: Re: Confusing error message with too-large file in pg_basebackup