Skip site navigation (1) Skip section navigation (2)

Re: Data directory with trailing [back]slash

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: Magnus Hagander <mha(at)sollentuna(dot)net>
Cc: PgSql-Win32 <pgsql-hackers-win32(at)postgresql(dot)org>
Subject: Re: Data directory with trailing [back]slash
Date: 2004-06-20 22:07:40
Message-ID: 40D60AAC.7000507@dunslane.net (view raw or flat)
Thread:
Lists: pgsql-hackers-win32pgsql-patches
Why isn't the path being canonicalised, which should remove the trailing 
slash.

cheers

andrew

Magnus Hagander wrote:

>Hi!
>
>It's not possible to start the postmaster on win32 with:
>postmaster -D d:\pgdata\
>or
>postmaster -D d:/pgdata/
>
>but it does work with 
>postmaster -D d:\pgdata
>or
>postmaster -D d:/pgdata/
>
>
>
>
>This is because of the stat() call in postmaster.c in checkDataDir() -
>stat() clearly does not work with trainling slash/backslash. I changed
>the code to:
>
>	strcpy(path, checkdir);
>#ifdef WIN32
>	if (path[strlen(path)-1] == '\\' || path[strlen(path)-1] == '/')
>		path[strlen(path)-1] = 0;
>#endif
>	if (stat(path, &stat_buf) == -1)
>	{
>		if (errno == ENOENT)
>			ereport(FATAL,
>					(errcode_for_file_access(),
>					 errmsg("data directory \"%s\"
>does not exist",
>							path)));
>		else
>			ereport(FATAL,
>					(errcode_for_file_access(),
>			 errmsg("could not read permissions of directory
>\"%s\": %m",
>					path)));
>	}
>
>
>It seems to work on my system. I'm not sure if this is a good place to
>do it, though, or if it should be changed at a different place. (with
>this fix it will use duplicate path separators elsewhere, but from what
>I can see this appears to work just fine).
>
>If this seems like a good idea, please apply from code above. If not,
>please direct me to a better plavce to work :-)
>
>
>This is all required for the win32 installer, because Windows Installer
>automatically adds trailing backslashes to all paths.
>
>//Magnus
>
>---------------------------(end of broadcast)---------------------------
>TIP 5: Have you checked our extensive FAQ?
>
>               http://www.postgresql.org/docs/faqs/FAQ.html
>
>  
>

In response to

pgsql-patches by date

Next:From: Simon RiggsDate: 2004-06-20 22:27:31
Subject: Re: Tablespaces
Previous:From: Tom LaneDate: 2004-06-20 21:43:48
Subject: Re: nested xacts and phantom Xids

pgsql-hackers-win32 by date

Next:From: Andrew DunstanDate: 2004-06-21 00:21:17
Subject: Re: Data directory with trailing [back]slash
Previous:From: Tom LaneDate: 2004-06-20 19:33:23
Subject: Re: Data directory with trailing [back]slash

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group