pymongo:"OperationFailure:数据库错误:查询服务器时出错"

rob*_*rit 6 python mongodb pymongo

在进行查询时,我们偶尔会收到以下错误:

OperationFailure: database error: error querying server
Run Code Online (Sandbox Code Playgroud)

没有特定的查询导致这种情况,并且在重复该过程时工作正常.有没有人看到这个错误?

我们的设置是Amazon EC2上的Ubuntu VM集群,我们使用的是Python 2.7.3和pymongo v2.3.我们也使用Mongoengine,但我们仍然从非Mongoengine代码中获得此异常.

rob*_*rit 4

对于那些发现这个问题的人:

我们永远无法完全诊断出这个问题,我们的直觉是数据库连接往往会因为某种原因偶尔失败。从我们对分布式计算的研究来看,这是一个常见问题,需要明确处理。

最后,我们通过捕获OperationFailure异常和类似异常并重新建立数据库连接来调整我们的系统,使其对数据库连接故障变得稳健。这解决了这个问题以及我们遇到的许多类似问题。