Re: PG 8.4 won't start on Windows Server 2008 64-bit - Mailing list pgsql-general

From Craig Ringer
Subject Re: PG 8.4 won't start on Windows Server 2008 64-bit
Date
Msg-id 4C58F385.2060600@postnewspapers.com.au
Whole thread Raw
In response to Re: PG 8.4 won't start on Windows Server 2008 64-bit  (David R Robison <drrobison@openroadsconsulting.com>)
Responses Re: PG 8.4 won't start on Windows Server 2008 64-bit
List pgsql-general
On 03/08/10 23:37, David R Robison wrote:
>
> 2010-08-03 15:34:01 GMT LOCATION:  PostmasterMain,
> .\src\backend\postmaster\postmaster.c:743
> 2010-08-03 15:34:01 GMT DEBUG:  00000: TZ "US/Eastern" matches Windows
> timezone "Eastern Daylight Time"
> 2010-08-03 15:34:01 GMT LOCATION:  identify_system_timezone,
> .\src\timezone\pgtz.c:1088
> 2010-08-03 11:34:01 EDT DEBUG:  00000: invoking
> IpcMemoryCreate(size=37044224)
> 2010-08-03 11:34:01 EDT LOCATION:  CreateSharedMemoryAndSemaphores,
> .\src\backend\storage\ipc\ipci.c:130
> 2010-08-03 11:34:01 EDT DEBUG:  00000: max_safe_fds = 987, usable_fds =
> 1000, already_open = 3
> 2010-08-03 11:34:01 EDT LOCATION:  set_max_safe_fds,
> .\src\backend\storage\file\fd.c:479
> 2010-08-03 11:34:02 EDT DEBUG:  00000: logger shutting down
> 2010-08-03 11:34:02 EDT LOCATION:  SysLoggerMain,
> .\src\backend\postmaster\syslogger.c:446

This is pretty odd. It seems to init shared memory OK, set up the fd
limits, then exit.

What's your log level set to in postgresql.conf ? If "log_min_messages"
isn't set to "debug5", set it to debug5 and try again.

  log_min_messages = debug5

It'd also be helpful to set log_line_prefix:

  log_line_prefix = '%t %p '

... then try to start the service again.




If you're game, you can potentially run PostgreSQL from Visual Studio
after configuring your symbol path and installing the source code, so
you can set breakpoints and step through startup. This will help you
isolate where things go wrong, but will require some knowledge of C
programming to be practical given the difficulty of doing any kind of
remote support. If you're interested in giving this a try, see:

http://wiki.postgresql.org/wiki/Getting_a_stack_trace_of_a_running_PostgreSQL_backend_on_Windows

... which covers setup of the symbol path and Visual Studio. I haven't
written anything for debugging PostgreSQL startup problems there, but it
should be pretty simple to get Visual Studio to fire up a postgresql
backend in single-user mode:

  http://www.postgresql.org/docs/current/static/app-postgres.html

  postgres.exe --single -D "\path\to\data\dir" ...other args...

... though on Windows the need to run postgres.exe as the "postgres"
user will complicate things. I'm not too sure if Visual Studio will
debug a process invoked via runas.exe. I don't have a Windows machine
with Visual Studio to hand so I can't test this right now, but you might
want to have a play and see if you have any luck.


--
Craig Ringer

Tech-related writing: http://soapyfrogs.blogspot.com/

pgsql-general by date:

Previous
From: Craig Ringer
Date:
Subject: Re: "package org.postgresql.util does not exist" compilation problem
Next
From: Gerd Koenig
Date:
Subject: Re: problem with pg_standby