Hi, Asif.

Thank you for response.


>       C:\Users\asif\Desktop\Program files\9.3>"bin\pg_ctl" -D 
> "C:\Users\asif\Desktop\Program files\9.3\data1" -l logfile start
>       server starting

This failure does not occur by the command line.
PostgreSQL needs to start by Windows Service.

Additionally,In this case, 
A file "Program" needs to be exist at "C:\Users\asif\Desktop\", and 
"postgres.exe" needs to be exist at "C:\Users\asif\Desktop\Program 
files\9.3\bin".
------------
C:\Users\asif\Desktop\Program files\9.3\bin>dir
...
    4,435,456   postgres.exe
       80,896   pg_ctl.exe
...

C:\Users\asif\Desktopp>dir
...
            0  Program
<DIR>          Program files
...
------------

Regards,
Naoya

> Hi Naoya,
> 
> I am not able to reproduce the problem. Do you mean pg windows service 
> installed by installer is not working or bin\pg_ctl binary is not accepting 
> spaces in the patch ?. Following worked for me i.e.
> 
> 
>       C:\Users\asif\Desktop\Program files\9.3>"bin\pg_ctl" -D 
> "C:\Users\asif\Desktop\Program files\9.3\data1" -l logfile start
>       server starting
> 
> 
> Can you please share the exact steps ?. Thanks.
> 
> 
> Regards,
> Muhammad Asif Naeem
> 
> 
> 
> On Mon, Oct 28, 2013 at 10:26 AM, Naoya Anzai <anzai-na...@mxu.nes.nec.co.jp> 
> wrote:
> 
> 
>       Hi All,
>       
>       I have found a case that PostgreSQL Service does not start.
>       When it happens, the following error appears.
>       
>        "is not a valid Win32 application"
>       
>       This failure occurs when the following conditions are true.
>       
>       1. There is "postgres.exe" in any directory that contains a space,
>          such as "Program Files".
>       
>          e.g.)
>          C:\Program Files\PostgreSQL\bin\postgres.exe
>       
>       2. A file using the first white space-delimited
>          tokens of that directory as the file name exists,
>          and there is it in the same hierarchy.
>       
>          e.g.)
>          C:\Program     //file
>       
>       "pg_ctl.exe" as PostgreSQL Service creates a postgres
>       process using an absolute path which indicates the
>       location of "postgres.exe",but the path is not enclosed
>       in quotation.
>       
>       Therefore,if the above-mentioned conditions are true,
>       CreateProcessAsUser(a Windows Function called by pg_ctl.exe)
>       tries to create a process using the other file such
>       as "Program", so the service fails to start.
>       
>       Accordingly, I think that the command path should be
>       enclosed in quotation.
>       
>       I created a patch to fix this failure,
>       So could anyone confirm?
>       
>       Regards,
>       
>       Naoya
>       
>       ---
>       Naoya Anzai
>       Engineering Department
>       NEC Soft, Ltd.
>       E-Mail: anzai-na...@mxu.nes.nec.co.jp
>       ---
>       
>       
>       --
>       Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
>       To make changes to your subscription:
>       http://www.postgresql.org/mailpref/pgsql-hackers
>       
>       
> 
> 
> 

以上、よろしくお願い致します。

--------------------------------------------------------
NECソフト株式会社
PFシステム事業部 テーマソフト開発G
安西 直也

外線(03)5534-2353
内線(8)57-40364
Mail:NES-N2363
E-mail:anzai-na...@mxu.nes.nec.co.jp
--------------------------------------------------------
≪本メールの取り扱い≫
・区分:秘密
・開示:必要最小限で可
・持出:禁止
・期限:無期限
・用済後:廃棄





-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to