HI all,
I've encountered a database freeze and found it's due
to the reset of connection after abort.
The following is a part of postmaster log.
A new backend(pid=395) started immedaitely after
a backend(pid=394) abort. OTOH postmaster tries
to kill all backends to cleanup shared memory.
However the process 394 ignored SIGUSR1 signal
and is waiting for some lock which would never be
released.
FATAL 2: elog: error during error recovery, giving up!
DEBUG: proc_exit(2)
DEBUG: shmem_exit(2)
postmaster: ServerLoop: handling reading 5
postmaster: ServerLoop: handling reading 5
postmaster: ServerLoop: handling writing 5
postmaster: BackendStartup: pid 395 user reindex db reindex socket 5
DEBUG: exit(2)
postmaster: reaping dead processes...
postmaster: CleanupProc: pid 394 exited with status 512
Server process (pid 394) exited with status 512 at Tue Dec 19 20:12:41 2000
Terminating any active server processes...
postmaster: CleanupProc: sending SIGUSR1 to process 395
postmaster child[395]: starting with (postgres -d2 -v131072 -p reindex )
FindExec: searching PATH ...
ValidateBinary: can't stat "/bin/postgres"
ValidateBinary: can't stat "/usr/bin/postgres"
ValidateBinary: can't stat "/usr/local/bin/postgres"
ValidateBinary: can't stat "/usr/bin/X11/postgres"
ValidateBinary: can't stat "/usr/lib/jdk1.2/bin/postgres"
ValidateBinary: can't stat "/home/freetools/bin/postgres"
FindExec: found "/home/freetools/reindex/bin/postgres" using PATH
DEBUG: connection: host=[local] user=reindex database=reindex
DEBUG: InitPostgres
Regards.
Hiroshi Inoue