Alvaro Herrera wrote:
> Alvaro Herrera wrote:
> > Stefan Kaltenbrunner wrote:
> >
> > > well - i now have a core file but it does not seem to be much worth
> > > except to prove that autovacuum seems to be the culprit:
> > >
> > > Core was generated by `postgres: autovacuum worker process
> > > '.
> > > Program terminated with signal 6, Aborted.
> > >
> > > [...]
> > >
> > > #0 0x00000ed9 in ?? ()
> > > warning: GDB can't find the start of the function at 0xed9.
>
> I just noticed an ugly bug in the worker code which I'm fixing. I think
> this one would also throw SIGSEGV, not SIGABRT.
Nailed it -- this is the actual bug that causes the abort. But I am
surprised that it doesn't print the error message in Stefan machine's;
here it outputs
TRAP: FailedAssertion("!((((unsigned long)(elem)) > ShmemBase))", File:
"/pgsql/source/00head/src/backend/storage/ipc/shmqueue.c",Line: 107)
16496 2007-05-02 11:30:31 CLT DEBUG: server process (PID 16540) was terminated by signal 6: Aborted
16496 2007-05-02 11:30:31 CLT LOG: server process (PID 16540) was terminated by signal 6: Aborted
16496 2007-05-02 11:30:31 CLT LOG: terminating any other active server processes
16496 2007-05-02 11:30:31 CLT DEBUG: sending SIGQUIT to process 16541
16496 2007-05-02 11:30:31 CLT DEBUG: sending SIGQUIT to process 16498
16496 2007-05-02 11:30:31 CLT DEBUG: sending SIGQUIT to process 16500
16496 2007-05-02 11:30:31 CLT DEBUG: sending SIGQUIT to process 16499
16541 2007-05-02 11:30:33 CLT WARNING: terminating connection because of crash of another server process
Maybe stderr is going somewhere else? That would be strange, I think.
I'll commit the fix shortly; attached.
--
Alvaro Herrera http://www.flickr.com/photos/alvherre/
"La primera ley de las demostraciones en vivo es: no trate de usar el sistema.
Escriba un guión que no toque nada para no causar daños." (Jakob Nielsen)