It appears that when I try to configure listen_addresses in postgresql.conf (on Windows) with '0.0.0.0' , pg_ctl doesn't properly detect that server has started and blocks forever.
C:\pg\pgsql>bin\pg_ctl.exe -D data -w start waiting for server to start..................................................... .......... stopped waiting pg_ctl: could not start server Examine the log output.
(although, the postgres.exe processes were started)
If I change listen_addresses to '*', then pg_ctl exits fine after starting up.