On Thu, Apr 14, 2016 at 8:44 PM, Alvaro Herrera <alvhe...@2ndquadrant.com>
wrote:

> Magnus Hagander wrote:
> > On Thu, Apr 14, 2016 at 8:20 PM, Ashutosh Sharma <ashu.coe...@gmail.com>
> > wrote:
> >
> > > I was just curious to know how would "*pg_basebackup*" behave if we do
> > > create a symbolic link for directories other than pg_xlog/pg_tblspc.
> > > However it is clearly mentioned in the documentation of pg_basebackup
> that
> > > if a  Symbolic link for the directories other than pg_tblspc and
> pg_xlog is
> > > created then it would be skipped. But, that is not the case for
> pg_replslot
> > > and pg_stat_tmp. Is this not an issue. Should these directories not be
> > > skipped. Please let me know your thoughts on this. Thanks.
> >
> > I agree that actually generating a corrupt tarfile is not good. But I
> think
> > the correct fix is to actually generate an empty placeholder directory
> > rather than skipping it - thereby making the backup look the same as it
> > would if it was a correct directory where we just skipped the contents.
>
> Hmm, if your server has replication slots and pg_basebackup doesn't copy
> them, is the copy okay?


If pg_replslot is a directory and not a symlink, we skip the contents and
create an empty directory. So it'd better be ok...


  It may be a waste to try to create all the
> decoded data if there was any spillage, but perhaps it should at least
> backup the state?  If this is excessive datadir knowledge in
> pg_basebackup, perhaps it should throw an error if some of the critical
> subdirs aren't copied?
>

The knowledge isn't actually in pg_basebackup, it's in basebackup.c in
backend/replication.


-- 
 Magnus Hagander
 Me: http://www.hagander.net/
 Work: http://www.redpill-linpro.com/

Reply via email to