While trying to test Tom's theory about Windows not being able to
reinitialise shared memory when a backend crashes, I was doing some
testing on my Vista box. I killed a backend using the task manager, and
the postmaster never noticed. pg_cancel_backend() reported correctly
that the process didn't exist, but pg_stat_activity still had it listed
as IDLE, and the server certainly didn't re-initialise as it would have
on Unix. This seems a fairly serious bug.
cheers
andrew