Python psycopg2 timeout
J'ai un énorme problème:
Il semble y avoir des problèmes de matériel sur le routeur du serveur de mon python logiciel fonctionne sur. La connexion à la base de données seulement réussi sur tous troisième fois. Ainsi, un psycopg2.connect() peut prendre jusqu'à 5 minutes avant que je reçois une exception délai.
2014-12-23 15:03:12,461 - ERROR - could not connect to server: Connection timed out
Is the server running on host "172.20.19.1" and accepting
C'est le code que j'utilise.
# Connection to the DB
try:
db = psycopg2.connect(host=dhost, database=ddatabase,
user=duser, password=dpassword)
cursor = db.cursor(cursor_factory=psycopg2.extras.DictCursor)
except psycopg2.DatabaseError, err:
print(str(err))
logging.error(str(err))
logging.info('program terminated')
sys.exit(1)
J'ai essayé quelques timeout ajouts pour la requête, mais cela n'a pas aidé, car la connexion n'ai pas encore eu établies à tous.
Est-il un moyen, je peux arrêter le programme immédiatement, lorsque la connexion n'a pas pu être mis en place?
source d'informationauteur gulden
Vous devez vous connecter pour publier un commentaire.
Lors de l'utilisation du mot-clé arguments de la syntaxe à la
connect
fonction il est possible d'utiliser leslibpd
pris en charge les paramètres de connexion. Parmi ceux qui s'y estconnect_timeout
en quelques secondes:http://www.postgresql.org/docs/current/static/libpq-connect.html#LIBPQ-PARAMKEYWORDS
http://initd.org/psycopg/docs/module.html
Un délai de connexion soulève une
OperationalError
exception.