Glyph Lefkowitz wrote: […] > Agreed. I've seen this behavior crop up shocking close to the top of profiles > for Calendar Server as well, so I'm very glad to hear you've undertaken this > work. The current default is almost certainly wrong; the only code which has > practically ever used it was the HTML traceback stuff, which most serious > users disable for security reasons anyway.
Good to know we're not the only ones :) The fact that it speeds up 'trial twisted' by ~10-15% is a nice bonus too! > Debugging is kind of a process-global thing, most of the time. I think maybe > we should have 'twisted.python.debug' which is the main thing that all these > features use, and then a setDebugging for each system (Failure, Deferred, > reactor; and ideally, eventually stuff like web, mail, conch too) to turn on > these expensive-but-occasionally-worthwhile features. A similar scheme has worked well for bzrlib. +1 > But I'd be happy if this change did _nothing_ but make Failure simply default > to not capturing globals and locals, and add a flag to explicitly request this > behavior. Like you say: the information is always captured but almost never > used. That's fine with me! I'll update the patch to add captureVars=False to Failure.__init__ instead of what it currently does, and happily leave defer.py unmodified from trunk. Thanks for the feedback, -Andrew. _______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python