I banged on this thread-time-crash-on-OSX bug a bit, and found that setting
ns_param   threadtimeout   10000       ;# Idle threads die at this rate

gets rid of this problem. While setting
ns_param   threadtimeout   0       ;# Idle threads die at this rate

or
ns_param   threadtimeout  1       ;# Idle threads die at this rate

causes the problem to come back. So, it seems the problem is generally with idle threads being shut down.

-john


Bug #2: occasional crash on OSX, when threads give notice of timeout waiting for connection

The gdb stack trace is a bit more useful in this case:

[07/Aug/2007:00:05:15][16497.25228800][-nssock:driver-] Notice: nssock: listening on 127.0.0.1:81 [07/Aug/2007:00:05:24][16497.25229824][-conn:0-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:24][16497.25203712][-conn:5-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:24][16497.25230848][-conn:2-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:24][16497.25229824][-conn:1-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:24][16497.25202688][-conn:4-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:24][16497.25201664][-conn:3-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:25][16497.25203712][-conn:6-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:25][16497.25229824][-conn:7-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:25][16497.25202688][-conn:9-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:25][16497.25204736][-conn:8-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:25][16497.25201664][-conn:10-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:25][16497.25203712][-conn:11-] Notice: exiting: timeout waiting for connection [07/Aug/2007:00:05:25][16497.25202688][-conn:12-] Notice: exiting: timeout waiting for connection

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000004
[Switching to process 16497 thread 0x3a0b]
0x0a00c130 in Tcl_AsyncDelete ()
(gdb) where
#0  0x0a00c130 in Tcl_AsyncDelete ()
#1  0x00655500 in SignalCmdCleanUp ()
#2  0x0a00f23a in DeleteInterpProc ()
#3  0x0a00c9b1 in Tcl_DeleteInterp ()
#4  0x0007da21 in DeleteData ()
#5  0x0000793a in NsCleanupTls ()
#6  0x0000891f in FreeThread ()
#7  0x90025400 in _pthread_tsd_cleanup ()
#8  0x90024f88 in pthread_exit ()
#9  0x00008203 in Ns_ThreadExit ()
#10 0x0006f756 in NsConnThread ()
#11 0x000088ee in ThreadMain ()
#12 0x90024227 in _pthread_body ()
(gdb)

This doesn't consistently occur, but it's often enough that I run nsd in a re-starting shell script while running on OSX.

------

I wish I could be more helpful and actually give a C code patch for these, but they're not aggravating enough for me to spend the ramp- up time figuring how to fix this sort of thing, but I thought at least I should report them so they could be logged.

-john




--
AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> 
with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: 
field of your email blank.

Reply via email to