[Zope] Bizarre crashes under Solaris: "nobody" vs. a real user (a fix?)

Walter A. Aprile walter@ilce.edu.mx
Mon, 3 Jul 2000 22:08:55 -0500 (CDT)


Hi,
	in the past days I have been experiencing mysterious crashes,
under heavy load conditions with 

Zope version: Zope 2.1.6 (binary release, python 1.5.2, solaris-2.6-sparc) 
Python version: 1.5.2 (#8, Nov 16 1999, 10:05:41) [GCC 2.8.1] 
System Platform: sunos5 

	Since that was the sensible choice, I was running Zope as
user "nobody". Completely by chance, I run it as a 'normal' user
(neither root, nor nobody). I was surprised to realize that it
would not crash any more, no matter how much I pounded it with
wget and similar tools.

	I was running it from a terminal, where every now and
then interesting messages pop up:

------
2000-06-30T22:33:44 PROBLEM(100) ZServer warning: server accept() threw EWOULDBLOCK

------
2000-07-01T07:58:31 PROBLEM(100) ZServer Server accept() threw an exception

------
2000-07-03T03:59:43 ERROR(200) ZServer uncaptured python exception, closing channel <zhtt
p_channel connected 132.248.10.194:1073 at 70e4d8 channel#: 15840 requests:13> (socket.er
ror:(9, 'Bad file number') [/usr/local/zope/ZServer/medusa/asynchat.py|initiate_send|211]
 [/usr/local/zope/ZServer/medusa/http_server.py|send|400] [/usr/local/zope/ZServer/medusa
/asyncore.py|send|237])
------
2000-07-03T14:50:34 ERROR(200) ZServer Bad HTTP request: GET /Zorba/logo-solo.gif >logo-s
olo.gif
------
2000-07-03T18:43:50 ERROR(200) ZServer uncaptured python exception, closing channel <zhtt
p_channel connected 200.15.155.65:3719 at 66da40 channel#: 22958 requests:1> (socket.erro
r:(9, 'Bad file number') [/usr/local/zope/ZServer/medusa/asynchat.py|initiate_send|211] [
/usr/local/zope/ZServer/medusa/http_server.py|send|400] [/usr/local/zope/ZServer/medusa/a
syncore.py|send|237])

	Could be that, when running as nobody, Zope could not do something
that it has do after an exception ? It could be something as simple as
writing to /tmp or logging things with syslogd ... anyway, it could be
something that Solaris prevents it from doing, which in turn causes the
crashes.

	Now, I am still keeping my fingers crossed for tomorrow I have a demo.

	So, apologies if all this is old hat, and thanks for the wonderful
list environment.

	Walter

-- Vita brevis, ars longa, occasio celeris, experimentum periculosum,
judicium difficile. Attention: Un train peut en cacher un autre
-><- Eris aprueba este email ! -><- http://redescolar.ilce.edu.mx