-----BEGIN PGP SIGNED MESSAGE-----
Roché Compaan wrote:
> In CMFCore.FSPythonScript.py around line 170 in the _exec method, a
> volatile attribute is checked to see if a script has been compiled
> properly. The lifetime of volatile attributes cannot be guaranteed
> right, so I would assume that this code is not being careful enough.
> This is the code I'm talking about:
> # Prepare the function.
> f = self._v_f
> if f is None:
> # The script has errors.
> __traceback_supplement__ = (
> FSPythonScriptTracebackSupplement, self, 0)
> raise RuntimeError, '%s has errors.' % self._filepath
> I have a few Plone sites that work perfectly 99% of the time, but under
> heavy load they raise RuntimeErrors on scripts at precisely this point
> in the code. The only explanation seems to be that the volatile
> attribute has lost its state. When I "customise" the scripts to force a
> recompile it works again.
> Seems like a bug?
I've never seen the behavior you report, but inspection suggests that an
extra check would not hurt. E.g., before the 'if f is None' above, adding:
if f is None:
f = self._v_f
should do the trick. If you can generate a patch for this, which
includes a test (calling 'script._p_deactivate()' should mimic the
behavior you are seing), I would be glad to merge it (assuming you don't
have SVN privileges).
Tres Seaver +1 540-429-0999 [EMAIL PROTECTED]
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
Zope-CMF maillist - Zope-CMF@lists.zope.org
See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests