Dieter Maurer wrote:
>
> > Erik Enge wrote:
> > > On Sun, 29 Apr 2001, Erik Enge wrote:
> > > I figured it out, I think. Let's say I have these two methods:
> > >
> > > def a():
> > > b()
> > >
> > > def b():
> > > a()
> > >
> > > If I call a(), then Zope dies and restarts without giving me any error
> > > at all. Anyone got a clue?
> This is an infinite recursion.
>
> I once had such a situation.
>
> Usually Python protects itself against such recursions by limiting
> the depth of its runtime stack. It raises a "RuntimeError: runtime
> stack limit exceeded" when its stack overflows.
>
> But in my case, the thread's runtime stack (maintained
> by the C runtime not Python) was more limited
> than the Python stack limit. When the thread's stack overflew,
> the process was killed by Solaris.
> Python did not have any chance to raise an exception
> as the death was immediate.
>
> We may need to ask the Python maintainers to increase the
> thread stack size or to more severely restrict the
> Python runtime stack.
This can be done manually in your site.py - sys.setrecursionlimit()
Richard
--
Richard Jones
[EMAIL PROTECTED]
Senior Software Developer, Bizar Software (www.bizarsoftware.com.au)
_______________________________________________
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope )