2013-02-20 3 views
0

Je reçois beaucoup de disques de mon MongoDB et le long de la façon dont je reçois une erreurerreur de fonctionnement pymongo

File "C:\database\models\mongodb.py", line 228, in __iter__ 
    for result in self.results: 
    File "C:\Python27\Lib\site-packages\pymongo\cursor.py", line 814, in next 
    if len(self.__data) or self._refresh(): 
    File "C:\Python27\Lib\site-packages\pymongo\cursor.py", line 776, in _refresh 
    limit, self.__id)) 
    File "C:\Python27\Lib\site-packages\pymongo\cursor.py", line 720, in __send_message 
    self.__uuid_subtype) 
    File "C:\Python27\Lib\site-packages\pymongo\helpers.py", line 99, in _unpack_response 
    cursor_id) 

pymongo.errors.OperationFailure: cursor id '866472135294727793' not valid at server 
Exception KeyError: KeyError(38556896,) in <module 'threading' from 'C:\Python27\lib\threading.pyc'> ignored 

Qu'est-ce que cela signifie et comment puis-je résoudre ce problème. Je ne sais pas si c'est important, mais je l'ai fait utiliser from gevent import monkey; monkey.patch_all() lorsque j'ai ouvert la connexion

+1

Quand demander aux autres de corriger votre code, il aide à fournir le code. – kindall

Répondre

1

Lorsque le curseur a été ouvert pendant une longue période sans opérations, il (le curseur) peut timeout -> cela conduit à l'erreur

vous pouvez définir timeout = False dans votre requête find pour tourner le délai d'attente de

reference