node.js - MongoDB:使用replaceOne重复键错误索引
问题描述
我有一个带索引的集合
{
"v" : 2,
"unique" : true,
"key" : {
"username" : 1
},
"name" : "username_1",
"ns" : "heroku_25.player"
}
我运行查询
db.player.replaceOne({"username":"QdAKu"}, {"username":"QdAKu","name":"Blaksm","timePlayedTotal":4807724700}, {upsert:true});
我得到错误
MongoError: E11000 duplicate key error index: heroku_25.player.$username_1 dup key: { : "QdAKu" }
我正在使用 nodejs,带有mongodb 3.5.5
.
什么可能导致错误?如果查询是{"username":"QdAKu"}
并且键是 only username
,我不应该有重复键索引的错误。
该错误并非总是发生,只是在生产服务器上很少发生。
解决方案
推荐阅读
- c# - Blazor - 尝试用新行格式化文本区域
- javascript - 关于填充 p5.js 中褪色的问题
- web-crawler - 爬虫机器人用户代理格式
- python - Apache Beam - 调试垃圾收集以避免 OOM 问题
- c++ - 从父级的 wndproc 访问特定子窗口的最佳实践
- cors - 网站未发送“Allow-Access-Control-Origin”标头,但浏览器仍显示页面
- python - Python Selenium find_element_by_name 跳到第二个元素
- scala - 在 docker 容器内运行的 Akka Actor (Scala) 应用程序重新启动,日志中没有显示任何错误
- wampserver - 稍后将在我创建的 Wampserver 清理数据库文件中加载 phpmyadmin
- powershell - ConvertFrom-String 缺少属性