Ticket #411 defect closed fixed
Returning a Deferred from the callback of another Deferred too many times results a RecursionError
|Reported by:||etrepum||Owned by:|
|Cc:||glyph, radix, exarkun, spiv, itamarst, etrepum, titty, oubiwann, mithrandi@…, thijs, zooko@…||Branch:||
(diff, github, buildbot, log)
|Author:||exarkun, therve, mithrandi, jml||Launchpad Bug:|
Description (last modified by glyph) (diff)
Returning a Deferred from a callback to another Deferred will result in a RecursionError if it is done too many times with Defererds that have already fired.
The traceback in question doesn't have any application code on it and can be very difficult to interepret. At worst, Twisted should alert you to what has happened in a comprehensible manner; however, it should really be possible to just return Deferreds from callbacks indefinitely.
This is related to the more general issue of calling a one Deferred's callback from another Deferred's callback, but we can fix this specific case in a potentially more general way.