我想执行一个查询,从我的 MongoDB 服务器返回一些数据,但是当数据量变大时,我从 c.Find().All() 查询中收到“EOF”错误。
基本上我有:
activeData := []DataEntry{}
activeDataQuery := bson.M{"data.active": true}
err := sigdb.Find(activeDataQuery).All(&activeData)
这对于包含大约 50,000 个项目的小型测试来说效果很好,但是当我尝试我的完整数据集(超过 100 万个项目)时,它返回“EOF”,即使那里有数据要查询。
什么可能导致这种情况?我正在使用 Go 1.3 在运行 Ubuntu 14.04 的笔记本电脑上运行 Go 程序和 MongoDB 服务器。
编辑:经过进一步的试验,我还得到:“write tcp 127.0.0.1:27017: Broken pipe”来自同一个查询。
SMILET
相关分类