2011-04-21 3 views
0

Périodiquement, lorsque vous utilisez pyodbc pour créer une connexion à une base de données Oracle, il tue l'interpréteur.python se connecter à Oracle en utilisant pyodbc parfois tue l'interpréteur python

import pyodbc 
connectString = 'Driver={Microdsoft ODBC for Oracle};Server=<host>:<port>/<db>.<host>;uid=<username>;pwd=<password>' 
cnxn = pyodbc.connect(connectString) 

Say 1/5 du temps cela me passera de l'invite Python (>>>) vers le bas à mes dos rapide (C :)

Toute idée de pourquoi cela arrive ou comment répare le?

+0

« cela me drop » Aucun message? Vraiment? Avez-vous essayé d'exécuter 'top' ou un autre moniteur du système pour voir ce qui se passe? Et c'est le code ** seulement **, sans requête ou autre chose? Pouvez-vous fournir un journal qui montre ce qui se passe, avec toutes les sorties qui sont produites? –

+0

@ S.Lott Je peux recréer ce problème avec juste le code ci-dessus. Et oui, il tombe simplement de l'invite Python à l'invite DOS. Cela ne se produit pas à 100% du temps, peut-être à 25%, ce qui rend le diagnostic très difficile. Je ne suis pas sûr du fichier journal à fournir. Y a-t-il un fichier python.log que je peux consulter? – ccwhite1

+0

J'ai également vu un problème similaire lors de l'exécution d'un décompresser en utilisant zipfile.ZipFile.extract sur de gros fichiers zip, même si je n'ai pas écrit un test similaire à celui ci-dessus que je peux facilement le répliquer. – ccwhite1

Répondre

1

Nous n'avons pas pu déterminer ce qui causait exactement ce problème. La recherche nous amène à penser qu'il pourrait y avoir un problème avec Python 2.7.1, PyODBC et Win 2003 Server.

Pour résoudre ce problème, nous avons créé un fichier jar qui a exécuté le contrôle d'autorisation et avait le script python appeler ce fichier et retourner le résultat

Questions connexes