Python 神秘的Apache Django WSGI错误

Python 神秘的Apache Django WSGI错误,python,django,apache,wsgi,Python,Django,Apache,Wsgi,我正在用mod_wsgi在apache上运行django应用程序。apache错误日志是干净的,除了一个神秘的错误 Exception exceptions.TypeError: "'NoneType' object is not callable" in <bound method SharedSocket.__del__ of <httplib.SharedSocket instance at 0x82fb138c>> ignored Exception excep

我正在用mod_wsgi在apache上运行django应用程序。apache错误日志是干净的,除了一个神秘的错误

Exception exceptions.TypeError: "'NoneType' object is not callable" in <bound method SharedSocket.__del__ of <httplib.SharedSocket instance at 0x82fb138c>> ignored
Exception exceptions.TypeError:忽略中的“'NoneType'对象不可调用”

我理解这意味着一些代码试图调用SharedSocket。del,但它没有。我不知道原因是什么,也不知道如何着手解决它。此外,此错误被标记为已忽略。除了用错误消息填充日志文件外,它似乎不会引起任何实际问题。我甚至应该费心去修复它吗?

注意:这更像是一个指针,而不是一个答案,但我无法在注释中使用它


我做到了,而且似乎在Apache+mod_wsgi+MySQL环境中出现了一组相关的问题。罪魁祸首可能是由于进程池,每个进程都保持与DB服务器的开放连接,因此您无法同时连接到MySQL。还有迹象表明,一些非线程安全代码可能会在多线程环境中使用。祝你好运。

注意:这与其说是一个答案,不如说是一个指针,但我在评论中无法做到这一点


我做到了,而且似乎在Apache+mod_wsgi+MySQL环境中出现了一组相关的问题。罪魁祸首可能是由于进程池,每个进程都保持与DB服务器的开放连接,因此您无法同时连接到MySQL。还有迹象表明,一些非线程安全代码可能会在多线程环境中使用。祝你好运。

这可能是因为在处理异常时,正在销毁的对象的析构函数中发生了另一个异常,并且由于挂起的异常的状态,无法引发后一个异常。在Python C API中,PyErr_WriteUnraisable()可以将此类API的详细信息直接写入错误日志


因此,并不是del方法是None,而是它试图从del方法中执行的代码中使用的某个变量是None。您需要查看SharedSocket.del的代码,以准确了解发生了什么。

这可能是因为在处理异常时,正在销毁的对象的析构函数中发生了另一个异常,并且由于挂起的状态,无法引发后一个异常一个。在Python C API中,PyErr_WriteUnraisable()可以将此类API的详细信息直接写入错误日志

因此,并不是del方法是None,而是它试图从del方法中执行的代码中使用的某个变量是None。您需要查看SharedSocket.del的代码,以准确了解发生了什么