2011-06-29 6 views
1

私はmod_wsgiでApache上でdjangoアプリケーションを実行しています。 1つの不思議なエラーを除いて、Apacheのエラーログはきれいです。不思議なApache Django WSGIエラー

Exception exceptions.TypeError: "'NoneType' object is not callable" in <bound method SharedSocket.__del__ of <httplib.SharedSocket instance at 0x82fb138c>> ignored 

私は、これはいくつかのコードがSharedSocketを呼び出そうとしていることを意味することを理解しています。 デルですが、それはなしです。私はその理由が何であるか、それを修正する方法を知らない。また、このエラーは無視されます。また、エラーメッセージをログファイルに書き込む以外の実際の問題は発生していないようです。私はそれを修正しようと気にする必要がありますか?

答えて

1

例外を処理する際に、破棄されるオブジェクトのデストラクタ内でさらに例外が発生し、保留中のオブジェクトの状態のために後者の例外を発生させることができない可能性があります。 Python C APIの中では、PyErr_WriteUnraisable()によってエラーのログに直接書き込むことができます。

したがって、delメソッドはNoneではありませんが、delメソッド内で実行されるコードから使用しようとしている変数のいくつかはNoneです。あなたは、何が起こっているのかを正確に調べるためにSharedSocket.delのコードを見る必要があります。

0

注:これは答えよりポインタの方が多いですが、私はこれをコメントで動作させることができませんでした。

私はsome googling on the error messageでした。Apache + mod_wsgi + MySQL環境では、関連する問題が発生しているようです。問題は、プロセスプーリングのためにMySQLへの同時接続が不足している可能性があり、各プロセスはDBサーバーへのオープン接続を維持している可能性があります。また、スレッドセーフでないコードがマルチスレッド環境で使用される可能性があるという兆候もあります。がんばろう。

関連する問題