Обсуждение: [patch] 7.4 initdb - drop trailing slash from $PGDATA
I made a mistake while running 7.4 under W2k/Cygwin, so perhaps the patch would give user a little more comfort. root@w2kpicasso:~/work/tpu/course/1132/sql/postgres# LC_ALL=C initdb /usr/share/postgresql/data/ The files belonging to this database system will be owned by user "root". This user must also own the server process. The database cluster will be initialized with locale C. creating directory /usr/share/postgresql/data/... ok creating directory /usr/share/postgresql/data//base... ok creating directory /usr/share/postgresql/data//global... ok creating directory /usr/share/postgresql/data//pg_xlog... ok creating directory /usr/share/postgresql/data//pg_clog... ok selecting default max_connections... Caught signal. Caught signal. --- initdb.orig 2004-01-17 13:14:36.000000000 +0200 +++ initdb 2004-01-17 13:18:08.000000000 +0200 @@ -333,6 +333,15 @@ shift done + + +if [ ! -z "$PGDATA" ]; then + # Remove trailing slash + PGDATA=`echo "$PGDATA" | sed -e "s/\/$//"` +fi + + + if [ "$usage" ]; then echo "$CMDNAME initializes a PostgreSQL database cluster." echo
Jari Aalto wrote: > I made a mistake while running 7.4 under W2k/Cygwin, so perhaps > the patch would give user a little more comfort. I don't see how. Please explain.
Peter Eisentraut <peter_e@gmx.net> writes: > Jari Aalto wrote: >> I made a mistake while running 7.4 under W2k/Cygwin, so perhaps >> the patch would give user a little more comfort. > I don't see how. Please explain. CVS-tip initdb seems to be written to suppress any trailing slash in the PGDATA path already, so this discussion may be moot. regards, tom lane
Tom Lane said: > Peter Eisentraut <peter_e@gmx.net> writes: >> Jari Aalto wrote: >>> I made a mistake while running 7.4 under W2k/Cygwin, so perhaps the >>> patch would give user a little more comfort. > >> I don't see how. Please explain. > > CVS-tip initdb seems to be written to suppress any trailing slash in > the PGDATA path already, so this discussion may be moot. > Yes (except that leading slashes are not suppressed). That was deliberate, for the sake of simplicity and clarity. It has just occurred to me though that this might have unintended (bad) consequences on Windows if PGDATA is set to the root of a mapped drive, like "I:/". I will think about that a little and submit a patch if necessary. cheers andrew