mongodb获取的数据超出了缓存的限制导致报错
发布于 6 年前 作者 dlyt 2728 次浏览 来自 问答

mongodb报错:Overflow sort stage buffered data usage of 33557904 bytes exceeds internal limit of 33554432 bytes

解决办法: 有增加缓存大小, 如果增加了以后还是可能超的; 还有增加索引, 但是我查询的是所有数据, 没法加索引.

有什么好的办法解决这个问题么?


之前理解有问题, 再排序字段加索引即可.

1 回复

再做 sort() 时, 文档大小超过了32MB, 因为排序的话 会把数据都提到内存中, Mongo默认 in-memory sort 是32MB,所以会报这个错 具体有两种方案:

  1. 添加索引
  2. 修改 sort 默认的 32MB

具体参照: https://stackoverflow.com/questions/27023622/overflow-sort-stage-buffered-data-usage-exceeds-internal-limit

回到顶部