DTML documents killing Zope (was RE: [Zope] ZServer dying)

Mayers, Philip J p.mayers@ic.ac.uk
Wed, 28 Mar 2001 20:18:04 +0100


Yes, I'm running a stock 2.3.0 installation *except* I made that one change
to the sourcecode (otherwise the PythonScripts would take a long time to
load ever 10-30 seconds. The line used to read:

if getattr(self, Python_magic, None) != Python_magic:

And it now reads:

if getattr(self, 'Python_magic', None) != Python_magic:


FYI - it appears to be the _number_ of parameters. If I call the DTML
document with 12 parameters (context,REQUEST,p0=0,...p11=11) it fails under
load, anything less than that (i.e. drop *any* one or more of the paramters)
and it's ok.

I don't know if it's some critical limit I'm hitting (like stack space or
something equivalent) - I still don't know enough about Zope's internals to
find out. (If you want a rootshell on the machine running it, let me know)

Regards,
Phil

+----------------------------------+
| Phil Mayers, Network Support     |
| Centre for Computing Services    |
| Imperial College                 |
+----------------------------------+  

-----Original Message-----
From: Evan Simpson [mailto:evan@4-am.com]
Sent: 28 March 2001 20:22
To: Mayers, Philip J
Cc: zope@zope.org
Subject: Re: DTML documents killing Zope (was RE: [Zope] ZServer dying)


From: "Mayers, Philip J" <p.mayers@ic.ac.uk>
> I have a PythonScript (called as a Web page) which renders the HTML by
> calling external DTML documents, and supplies form field variables as 10
> keyword arguments. This seems to crash Zope if called under load. If I
don't
> supply the keyword arguments (and of course, the field isn't filled in)
then
> everything is OK.

Just to get this out of the way as a possible cause, if you grep
PythonScript.py for "magic", does the following line have quote marks around
the first 'Python_magic' (in getattr)?  It should.

if getattr(self, 'Python_magic', None) != Python_magic:

Cheers,

Evan @ digicool