私はDjango ORMを使用してPostgreから読み書きするスタンドアロンスクリプトを持っています。Django DatabaseErrorの後に再接続する方法:クエリタイムアウト
が、私はこのエラーを取得し、時折
DatabaseError: query timeout server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request.
私は接続を再確立し、スクリプトの処理コードを再試行する必要がありますが、方法を見つけるように見えることはできません。次のコードは、再試行時に 'InterfaceError:connection already closed'を呼び出すため、動作しません。
for repeat in range(5):
try:
.....................PROCESSING CODE...................
except DatabaseError, e:
time.sleep(30)
else:
break
else:
return
、私はこれを試して便利なのPostgreSQLを持っていない
from django.db import connection
connection.connection.close()
connection.connection = None
:
私はもうこの問題の影響を受けません。他の誰かがこの答えを正しい解決策であると証明したら、私はそれをマークします。答えてくれてありがとう。 – kakarukeys
これを行ってください。それが動作するかどうかを知らせます... –
@kakarukeysこれは私のために働く。 (Django 1.4とpostgresqlを使って) –