[Zope-dev] Python Method infinite loop?
Jeff K. Hoffman
jeff.hoffman@goingv.com
Fri, 10 Mar 2000 10:44:40 -0500 (EST)
On Fri, 10 Mar 2000, Evan Simpson wrote:
> PythonMethods are "safe" in the sense that they should not allow access to
> or alteration of Zope objects and data without correct permissions.
>
> They are *not* "safe" in the sense of preventing deliberate (or accidental)
> denial of service. While it would be possible for PMs to detect and halt
> infinite (or at least very long) loops, this would really only help with
> accidental cases, and would be fairly expensive. There are so many ways to
> arrange for a DoS attack, most of them not fixable by the PM machinery, that
> I've punted on this.
>
> What would be really nice is Python machinery to assign space/time limits to
> a thread, so that *any* request mechanism which started consuming "too much"
> of your process' resources could be dealt with uniformly.
Thanks, Evan. As I said, I just wanted to make sure this was the intended
behavior.
I agree, the nicest solution would be the per-thread limits you speak of.
But, for now, I'll just kick the server when one of my people makes a
boo-boo.
While I'm on the topic, is there any way to figure out WHAT thread is
stuck in a loop? ie. If this were a Python Method that only looped every
third tuesday of the fifth leap year per century, is there a way for me to
identify what went awol, either using the monitor, or manage_debug, or...?
Preparing-for-that-third-tuesday-ly yours,
--Jeff
---
Jeff K. Hoffman 704.849.0731 x108
Chief Technology Officer mailto:jeff@goingv.com
Going Virtual, L.L.C. http://www.goingv.com/