Tom Lane wrote:
Andrew Dunstan <[EMAIL PROTECTED]> writes:
Tom Lane wrote:
This error message seems pretty thoroughly unhelpful though. Any ideas
what it's unhappy about?
I think we need to change the pg_regress error messages so that it
includes the command string that failed, at least for now.
Done, but I bet it doesn't tell us anything we don't know already.
Well, we have a result, courtesy of a special run from Stefan:
-D "C:/msys/1.0/home/pgbuild/pgfarmbuild/HEAD/pgsql.804/src/test/regress/./tmp_check/data" -L
--noclean --no-locale >"./log/initdb.log" 2>&1"
The second "C:/msys/1.0/" should not be in the path to initdb.
Not sure how to fix.
It will be either quoting problem or a vitual path problem, I am pretty
sure. The old shell script ran in a bourne-shell-like manner. But
calling system() from a C program will call the Windows command shell,
where the quoting rules are quite different.
In src/include/port.h we have
* Win32 needs double quotes at the beginning and end of system()
* strings. If not, it gets confused with multiple quoted strings.
* It also requires double-quotes around the executable name and
* any files used for redirection. Other args can use single-quotes.
* See the "Notes" section about quotes at:
The referenced link seems to be dead :-( but AFAICS the pg_regress code
is following the stated rules. Also, how is it getting past the "make
install" step which is quoting things just the same? Puzzling.
regards, tom lane
---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster