Re: New option for pg_basebackup, to specify a different directory for pg_xlog - Mailing list pgsql-hackers

From Haribabu kommi
Subject Re: New option for pg_basebackup, to specify a different directory for pg_xlog
Date
Msg-id 8977CB36860C5843884E0A18D8747B0372BED2B5@szxeml558-mbs.china.huawei.com
Whole thread Raw
In response to Re: New option for pg_basebackup, to specify a different directory for pg_xlog  (Haribabu kommi <haribabu.kommi@huawei.com>)
Responses Re: New option for pg_basebackup, to specify a different directory for pg_xlog  (Fujii Masao <masao.fujii@gmail.com>)
List pgsql-hackers
On 18 November 2013 11:19 Haribabu kommi wrote:
> On 17 November 2013 00:55 Fujii Masao wrote:
> > On Sat, Nov 16, 2013 at 2:27 PM, Haribabu kommi
> > <haribabu.kommi@huawei.com> wrote:
> > > on 15 November 2013 17:26 Magnus Hagander wrote:
> > >
> > >>On Fri, Nov 15, 2013 at 12:10 PM, Haribabu kommi
> > >><haribabu.kommi@huawei.com> wrote:
> > >
> > >>On 14 November 2013 23:59 Fujii Masao wrote:
> > >>> On Thu, Nov 14, 2013 at 9:08 PM, Haribabu kommi
> > >>> <haribabu.kommi@huawei.com> wrote:
> > >>> > Please find attached the patch, for adding a new option for
> > >>> > pg_basebackup, to specify a different directory for pg_xlog.
> > >>>>
> > >>> Sounds good! Here are the review comments:
> > >>>> Don't we need to prevent users from specifying the same
> directory
> > >>>> in both --pgdata and --xlogdir?
> > >
> > >>>I feel no need to prevent, even if user specifies both --pgdata
> and
> > >>>--xlogdir as same directory all the transaction log files will be
> > >>>created in the base directory  instead of pg_xlog directory.
> > >
> > >
> > >
> > >>Given how easy it would be to prevent that, I think we should. It
> > >>would be  an easy misunderstanding to specify that when you
> actually
> > >>want it in  <wherever>/pg_xlog. Specifying that would be redundant
> > >>in the first place,  but people ca do that, but it
> > >
> > >>would also be very easy to do it by mistake, and you'd end up with
> > >>something that's really bad, including a recursive symlink.
> > >
> > >
> > >
> > > Presently with initdb also user can specify both data and xlog
> > > directories as same.
> > >
> > > To prevent the data directory and xlog directory as same, there is
> a
> > > way in windows (_fullpath api) to get absolute path from a relative
> > > path, but I didn't get any such possibilities in linux.
> > >
> > > I didn't find any other way to check it, if anyone have any idea
> > > regarding this please let me know.
> >
> > What about make_absolute_path() in miscinit.c?
>
> The make_absoulte_patch() function gets the current working directory
> and adds The relative path to CWD, this is not giving proper absolute
> path.
>
> I have added a new function verify_data_and_xlog_dir_same() which will
> change the Current working directory to data directory and gets the CWD
> and the same way for transaction log directory. Compare the both data
> and xlog directories and throw an error. Please check it once.
>
> Is there any other way to identify that both data and xlog directories
> are pointing to the same Instead of comparing both absolute paths?
>
> Updated patch attached in the mail.

Failure when the xlogdir doesn't exist is fixed in the updated patch attached in the mail.

Regards,
Hari babu.


Attachment

pgsql-hackers by date:

Previous
From: Hannu Krosing
Date:
Subject: Re: additional json functionality
Next
From: Andres Freund
Date:
Subject: Re: Sequence Access Method WIP