Re: [pgsql-hackers-win32] Data directory with trailing [back]slash - Mailing list pgsql-patches
From | Bruce Momjian |
---|---|
Subject | Re: [pgsql-hackers-win32] Data directory with trailing [back]slash |
Date | |
Msg-id | 200407112133.i6BLX3v15476@candle.pha.pa.us Whole thread Raw |
In response to | Re: [pgsql-hackers-win32] Data directory with trailing [back]slash (Bruce Momjian <pgman@candle.pha.pa.us>) |
List | pgsql-patches |
OK, I found the problem. While we did canonicalize_path for client apps like initdb, we didn't do it for server-side paths, for the most part. This applied patch does canonicalize_path for -D, GUC variables, and environment variables supplying paths. This should fix the Win32 problem you saw. Are there other places where paths come into the system? --------------------------------------------------------------------------- Bruce Momjian wrote: > > I think this still is not fixed. I think we need to add a call to > trim_trailing_separator() in checkDataDir(). Magnus, can you confirm > this will fix it? > > --------------------------------------------------------------------------- > > Bruce Momjian wrote: > > > > I am now confused about the original report. I don't see how my fix > > would correct the reported problem. trim_trailing_separator() would > > have handled d:\pgdata\ and d:\pgdata just fine. The fix only corrects > > d:\. > > > > Magnus, does current CVS fix the problem? > > > > --------------------------------------------------------------------------- > > > > Andrew Dunstan wrote: > > > > > > > > > Tom Lane wrote: > > > > > > >"Magnus Hagander" <mha@sollentuna.net> writes: > > > > > > > > > > > >>It's not possible to start the postmaster on win32 with: > > > >>postmaster -D d:\pgdata\ > > > >>or > > > >>postmaster -D d:/pgdata/ > > > >> > > > >> > > > > > > > >Sounds like canonicalize_path() needs to be applied a bit sooner than > > > >it is. > > > > > > > >BTW I think canonicalize_path() is a few bricks shy of a load yet: > > > >I'm not sure it works well with Windows drive-letters, and it definitely > > > >will strip significant slashes when given input like '/' or 'C:\'. > > > >Feel free to fix those problems while at it... > > > > > > > > > > > > > > Or use the attached patch, which I think does it right. > > > > > > cheers > > > > > > andrew > > > > > > > > > > ---------------------------(end of broadcast)--------------------------- > > > TIP 9: the planner will ignore your desire to choose an index scan if your > > > joining column's datatypes do not match > > > > -- > > Bruce Momjian | http://candle.pha.pa.us > > pgman@candle.pha.pa.us | (610) 359-1001 > > + If your life is a hard drive, | 13 Roberts Road > > + Christ can be your backup. | Newtown Square, Pennsylvania 19073 > > > > ---------------------------(end of broadcast)--------------------------- > > TIP 2: you can get off all lists at once with the unregister command > > (send "unregister YourEmailAddressHere" to majordomo@postgresql.org) > > > > -- > Bruce Momjian | http://candle.pha.pa.us > pgman@candle.pha.pa.us | (610) 359-1001 > + If your life is a hard drive, | 13 Roberts Road > + Christ can be your backup. | Newtown Square, Pennsylvania 19073 > > ---------------------------(end of broadcast)--------------------------- > TIP 9: the planner will ignore your desire to choose an index scan if your > joining column's datatypes do not match > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
pgsql-patches by date: