我正在运行mongo java驱动程序2.11.0,我遇到了这个问题:
Caused by: com.mongodb.MongoInternalException: DBObject of size 5239290 is over Max BSON size 16777216
如您所见,错误消息错误:我的对象5239290小于16777216。
阅读mongodb java驱动代码我可以看到以下几行(com.mongodb.OutMessage.putObject(BSONObject)):
if (objectSize > Math.max(_mongo.getConnector().getMaxBsonObjectSize(), Bytes.MAX_OBJECT_SIZE)) {
throw new MongoInternalException("DBObject of size " + objectSize + " is over Max BSON size " + _mongo.getMaxBsonObjectSize());
}
这个奇怪错误的原因是_mongo.getConnector()。getMaxBsonObjectSize()从_mongo.getMaxBsonObjectSize()返回一个不同的值。
你有什么线索来解释这种奇怪的行为吗?