gra*_*tii 7 java indexing mongodb mongodb-java
所以我将MongoDB java驱动程序升级到2.12.4,其中ensureIndex()不推荐使用该方法.我使用的createIndex()方法似乎与文档似乎相似的功能ensureIndex().但是,当我在生产中使用此方法时,我收到以下错误 -
{ "serverUsed" : "X.X.X.X" , "ok" : 0.0 , "errmsg" : "Index with name: <index_name> already exists with different options" , "code" : 85}
Run Code Online (Sandbox Code Playgroud)
为什么会这样?任何人都可以帮我解决这个问题吗?
谢谢
在创建新索引之前尝试删除当前索引.
如果您担心这些索引的生产停机时间等,您可以:
威尔·谢弗(Will Shaver)的回答很好,但实际上并没有解决Grattii突出显示的问题。
createIndex如果您尝试在相同字段,顺序,但选项不同的字段上创建索引,则会失败,并显示此错误。这是因为索引选项可能会导致索引具有非常不同的属性。当您考虑带有unique标志的索引时,这很明显。
如果您createIndex使用相同的字段,相同的顺序和相同的选项进行调用,它将表现出预期的效果;无需更改集合的索引,也不会引发异常。
| 归档时间: |
|
| 查看次数: |
8713 次 |
| 最近记录: |