【发布时间】:2013-04-03 16:46:40
【问题描述】:
我创建了一个索引
curl -XPUT 'http://localhost:9200/tipindex/' -d '{
"settings" : {
"index" : {
"number_of_shards" : 1,
"number_of_replicas" : 1,
}
}
}
}'
然后我使用以下命令将一条河流与索引关联起来:
curl -XPUT "localhost:9200/_river/tipindex/_meta" -d '
{
"type": "mongodb",
"mongodb": {
"host": "<machine-name>",
"port": "27017",
"db": "mydb",
"collection": "tips"
},
"index": {
"name": "tipindex",
"type": "tips"
}
}'
索引已正确创建,所有文档均已编入索引。但是,如果我使用删除索引:
curl -XDELETE '<machine-name>:9200/tipindex/'
以{"ok":true,"acknowledged":true} 结尾
ES 日志:[tipindex] 删除索引
现在如果我执行 curl -XDELETE 'localhost:9200/tipindex/'
{"error":"IndexMissingException[[tipindex] missing]","status":404}
表示索引被删除。
但如果我重新启动 elasticsearch,索引会再次创建,其中包含 0 个文档且没有映射。
如果我重新创建索引并关联一条河流,则不会索引任何文档。 ES 日志也不显示任何错误。
现在我的问题是:
- 为什么索引没有被删除?
- 当我重新创建索引时,为什么文档没有再次被索引?
- 如何强制删除索引?
【问题讨论】:
标签: mongodb elasticsearch