Re: pg_basebackup fails with long tablespace paths - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: pg_basebackup fails with long tablespace paths
Date
Msg-id 549ABB56.4010505@gmx.net
Whole thread Raw
In response to Re: pg_basebackup fails with long tablespace paths  (Oskari Saarenmaa <os@ohmu.fi>)
Responses Re: pg_basebackup fails with long tablespace paths  (Abhijit Menon-Sen <ams@2ndQuadrant.com>)
List pgsql-hackers
On 12/22/14 5:40 PM, Oskari Saarenmaa wrote:
> I think we should just use the UStar tar format
> (http://en.wikipedia.org/wiki/Tar_%28computing%29#UStar_format) and
> allow long file names; all actively used tar implementations should be
> able to handle them.  I'll try to write a patch for that soonish.

UStar doesn't handle long link targets, only long file names (and then
only up to 255 characters, which doesn't seem satisfactory).

AFAICT, to allow long link targets, the available solutions are either
pax extended headers or GNU-specific long-link extra headers.

When I create a symlink with a long target and call tar on it, GNU tar
by default creates the GNU long-link header and BSD tar by default
creates a pax header.  But they are both able to extract either one.

As a demo for how this might look, attached is a wildly incomplete patch
to produce GNU long-link headers.

Attachment

pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: Commit timestamp abbreviations
Next
From: Peter Eisentraut
Date:
Subject: Re: pg_basebackup fails with long tablespace paths