我需要建立一个新的ES索引,以便在将来某个时候切换到。我一直在使用别名来执行此操作,方法是让我的应用程序引用别名,并使用HTTP API根据需要将别名指向现有索引或新索引。不幸的是,当应用程序重新启动时,它会抱怨索引已作为别名存在。请参阅stacktrace:
org.elasticsearch.indices.InvalidIndexNameException: [redacted] Invalid index name [redacted], already exists as alias
at org.elasticsearch.cluster.metadata.MetaDataCreateIndexService.validateIndexName(MetaDataCreateIndexService.java:174)
at org.elasticsearch.cluster.metadata.MetaDataCreateIndexService.validate(MetaDataCreateIndexService.java:510)
at org.elasticsearch.cluster.metadata.MetaDataCreateIndexService.access$100(MetaDataCreateIndexService.java:86)
at org.elasticsearch.cluster.metadata.MetaDataCreateIndexService$2.execute(MetaDataCreateIndexService.java:209)
at org.elasticsearch.cluster.service.InternalClusterService$UpdateTask.run(InternalClusterService.java:328)
at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:153)
任何人都知道为什么会发生这种情况以及如何防止这种情况发生?
答案 0 :(得分:0)
这似乎是通过今天发布的v0.0.4.0插件修复的,巧合的是
https://noamt.github.io/elasticsearch-grails-plugin/guide/single.html#history