【发布时间】:2019-08-16 14:09:01
【问题描述】:
我有一个正在使用的 MongoDB 远程服务器。
我的 KEY 是一个自定义对象,其中包含其他嵌套对象。
简单的插入工作正常,但如果我尝试运行
collection.replaceOne(eq("_id", KEY), document, new UpdateOptions().upsert(true));
我得到 com.mongodb.MongoWriteException: 应用更新后,发现(不可变)字段 '_id' 已更改为 _id: .......
如果我的键中只有原语,它可以正常工作。当然 KEY 的值是没有变化的(一直跟踪下去)。
这是一个带有 ReplaceOne 功能的 Mongo Java 驱动程序错误吗?
【问题讨论】: