0

如何使这个查询也适用于 3.6 mongodb?

  def get_metadata(self, job_id_list):
    # Gets all the document attributes except for `xml` and `_id` field
    resultList = list(self.collection.find({'jobId': {"$in": job_id_list}}, {'xml': 0, '_id': 0}))
    return resultList

问题是,我们正在迁移以使用 documentdb,而 documentDB 默认运行 mongo 3.6。

我一直收到这个错误,我认为这是一个版本问题。

pymongo.errors.OperationFailure: $in array size must not be greater than 10000

4

1 回答 1

0

问题在于MongoDB,而在于 DocumentDB。关于这个问题,我只能在AWS上找到另一个搜索结果。

发布问题:

仅供参考,我在使用 DocumentDB 时遇到了这个错误:

$in 数组大小不得大于 10000

我检查了文档,但没有看到提到的这个限制。可以在 MongoDB 中使用更大的数组,但我在 MongoDB 的文档中找不到任何这样的数组限制。

AWS 的回应:

感谢您花时间报告问题。我们正在努力修复。修复推出后,我们将发布此线程的更新。

上述回复时间为 2019 年 5 月 29 日,距本回复时间为 8 天前。这是他们目前正在努力解决的问题,但缺乏更新表明目前不存在修复。您只需等到他们发布修复程序并解决限制或继续使用 MongoDB 而不是 DocumentDB 直到修复程序到位。

于 2019-06-06T17:27:16.820 回答