If the process segfaults, it should leave a file named "core" in the
directory from which the process was started. There are, however, a
number of reasons why a core file may have been suppressed; to figure this
out, if you don't have a core file, you'd need to say which OS you're
using.
If you have gdb, you can run the aolserver process as follows:
- Change directories to the aolserver root dir
- run "gdb bin/nsd8x"
- Give gdb the command "set args -ft yourconfigfile.tcl"
(replace "yourconfigfile.tcl" with the name of
your actual config file)
- give gdb the "run" command
- induce the segfault. You should get a gdb prompt.
- Give gdb the command "where" and it will produce a stack
backtrace, which should tell you what the thread was executing when it
segfaulted.
If your stack backtrace shows that the process died somewhere inside
"malloc", then something somewhere corrupted the dynamic memory allocation
heap of your process prior to the segfault. These are really hard to
track down.
Pete.
On Sat, 12 Oct 2002, Patrick Spence wrote:
> At 01:08 PM 10/12/2002, you wrote:
> >Can you get a core dump and do a stack trace on it? Failing that, can you
> >run the server under a debugger with -i or -f, and then do a stack trace
> >when the segfault occurs?
>
> If I knew how to get a core dump or stack trace.. then yes I could. I have
> run it under -f which is how I determined that it was segfaulting due to
> the simple error message "segmentation fault" :) I am not a linux
> oriented programmer so I am not used to the debugging steps needed to do it
> for Aolserver... is there a step by step simple process to do so?
>
> Thanks :)
>
>
>
> >On Fri, 11 Oct 2002, Patrick Spence wrote:
> >
> > > I am getting a really wierd segfault on my servers.. if I try and enter an
> > > nsperm authenticated area using the username of nsadmin the server
> > > segfaults.
>
> Patrick Spence <ariven AT ariven DOT com>
> www.RandomRamblings.com
> www.Ariven.com
>