Andrew Dunstan writes:yes, that's what I meant.
So if the data directory previously existed and was empty, we don't
clean it out on error, even if we didn't use the noclean flag. Is this
intended behaviour or a bug? (If a bug it's trivially easy to fix.)
If the data directory already existed, we don't want to delete it. We should possibly delete the content, though.
Here's a patch which should work, I think:
Index: src/bin/initdb/initdb.sh
===================================================================
RCS file: /projects/cvsroot/pgsql-server/src/bin/initdb/initdb.sh,v
retrieving revision 1.203
diff -c -w -r1.203 initdb.sh
*** src/bin/initdb/initdb.sh 27 Sep 2003 16:27:57 -0000 1.203
--- src/bin/initdb/initdb.sh 1 Oct 2003 21:06:07 -0000
***************
*** 44,49 ****
--- 44,53 ----
if [ "$made_new_pgdata" = yes ]; then
echo "$CMDNAME: removing data directory \"$PGDATA\"" 1>&2
rm -rf "$PGDATA" || echo "$CMDNAME: failed" 1>&2
+ else
+ echo "$CMDNAME: removing contents of data directory \"$PGDATA\"" 1>&2
+ rm -rf "$PGDATA"/* || echo "$CMDNAME: failed" 1>&2
fi
else
echo "$CMDNAME: data directory \"$PGDATA\" not removed at user's request" 1>&2
---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend