[Twisted-Python] strange server crash
Christopher Armstrong
radix at twistedmatrix.com
Sun Mar 22 09:10:13 MDT 2009
On Sun, Mar 22, 2009 at 10:32 AM, Itamar Shtull-Trauring
<itamar at itamarst.org> wrote:
> On Sat, 2009-03-21 at 20:02 -0700, Alec Matusis wrote:
>
>> File "/nail/live/im/myserv/service.py", line 1199, in logout
>>
>> if self.nick in session.sellers:
>>
>> exceptions.AttributeError: WLResultSet instance has no
>> attribute 'sellers'
>>
>>
>>
>> This last error repeated about 1000 times for different clients, after
>> which the segfault occurred.
>>
>> The problem is, that “session” is an instance of a Session class that
>> is defined in the code, it is NEITHER a Deferred NOR an instance of
>> WLResultSet class- these are completely different classes, and there’s
>> no possible way in the code for variable session to become an instance
>> of Deferred.
>
> I've seen this happen - once. My guess then was memory corruption of
> some sort (somewhere in the C level). If you have any custom C
> extensions you might want to try valgrind.
I'd like to offer a slightly stronger suggestion that this segfault is
not the fault of any pure Python code (such as Twisted), but rather
some C extension that you're using, or perhaps a bug in the Python
runtime itself. The weird attribute errors for the wrong classes are
probably caused by memory corruption leading up to the segfault.
--
Christopher Armstrong
http://radix.twistedmatrix.com/
http://planet-if.com/
http://canonical.com/
More information about the Twisted-Python
mailing list