Re: pg_ctl start broken on windows - Mailing list pgsql-hackers-win32

From Andrew Dunstan
Subject Re: pg_ctl start broken on windows
Date
Msg-id 40C741B3.70904@dunslane.net
Whole thread Raw
In response to Re: pg_ctl start broken on windows  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: pg_ctl start broken on windows  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-hackers-win32
Bruce Momjian wrote:

>Andrew Dunstan wrote:
>
>
>>As I feared might happen, the use of a system() call to start the
>>postmaster in Windows is broken because of the brain dead way its shell
>>handles quotes.  I was able to get around this in initdb by making sure
>>that only one thing on the command line was quoted (by putting PGDATA in
>>the environment instead of the command line). We can't do that here ;-(
>>. Here's what happens:
>>
>>C:\msys\1.0\local\pgsql>bin\pg_ctl -D data -l logfile start
>>'C:/msys/1.0/local/pgsql/bin/postmaster.exe"  < nul >>"logfile' is not recognized as an internal or external command,
operableprogram or batch file. 
>>
>>
>>I think we'll have to bite the bullet and replace that system() call
>>with a direct call to CreateProcess() with the appropriate parameters. I
>>haven't ever done this, so some help from one of the more experienced
>>Windows programmers would be appreciated.
>>
>>
>
>Yes, I assumed pg_ctl would have such issues.  pg_dumpall has them as
>well calling pg_dump.
>
>Here is a strange idea that I am looking for someone to check. According
>to someone, Win32 system just strips off the first and last quotes, and
>that is why it is failing.  Try adding a quote to the beginning and end
>of the system string, and leave the existing quote intact.  That might
>fix is and if it does I can add this to CVS.
>
>
>

I'll test to make sure, but I can tell you now it won't work. It will
see the inner quotes and interpret them as part of the command. (I tried
all these variants when I was testing initdb).

cheers

andrew

pgsql-hackers-win32 by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: pg_ctl start broken on windows
Next
From: Bruce Momjian
Date:
Subject: Re: pg_ctl start broken on windows