from time to time my linux server crashes because one process of my
apache 2.2.2 (worker) exhaustes all of the servers memory within
seconds, only leaving a segmentation fault message in the apache error
cause I have no idea what could be the reason for this crashes, and
they appear unpredictable at different times and different loads, I
followed the instructions mentioned on this site
http://httpd.apache.org/dev/debugging.html to get a core dump (and I
set ulimit -c to unlimited)
yesterday the server crashed again and I got such a core dump file with
a size of 1GB - the file command prints following information about the
core.28800: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV),
SVR4-style, SVR4-style, from 'httpd'
But when I tried to use this with gbd like
gdb /usr/local/apache2/bin/httpd /tmp/core.28800
, gdb gives me following message
"/tmp/core.28800" is not a core dump: File format not recognized
I tried with gdb 6.4 and 6.3 with the same result. gdb 5.2.1 prints
"/tmp/core.28800" is not a core dump: File truncated
So, can anybody tell me, what goes wrong with this file or how I can
find out what goes on?
If the file should be in a wrong format - but why - is there a
possibility to transform it?
If the file really is truncated, for example the server dies before the
file could be written to its end, is it possible to edit the file
manually so gdb can work with it?
It would help me very much if the debugging would work with this dump,
cause it is a system in operation and its unpredictable when the next
crash happens - could be in the next hour or the next week. And of
course it is also not clear if a next core dump file would be correct.
I would be grateful for any help.