Re: pg_ctl start broken on windows
От | Bruce Momjian |
---|---|
Тема | Re: pg_ctl start broken on windows |
Дата | |
Msg-id | 200406091735.i59HZGE07429@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Re: pg_ctl start broken on windows (Andrew Dunstan <andrew@dunslane.net>) |
Ответы |
Re: pg_ctl start broken on windows
|
Список | pgsql-hackers-win32 |
Andrew Dunstan wrote: > >>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,operable program 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). Claudio reported it worked for pg_dumpall for single quotes: system(''cmd.exe' 'arg1' 'arg2''); What exactly is the logic of the stripping? In fact, pg_ctl is wrong because it is using double quotes instead of the safer single quotes. Let me make that change. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
В списке pgsql-hackers-win32 по дате отправления: