Graylog2 / Graylog2/graylog2-server
can't cleanup alias which pointed to multipe indexs using ES7
Open
bug
triaged
- Dominant language
- Java
- Stars
- 8.1k
- Forks
- 1.1k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 217
Description
can't cleanup alias which pointed to multipe alias using ES7
## Expected Behavior
graylog server should cleanup the alias which pointed to multiple indices
## Current Behavior
graylog server raise an exception
2021-08-09 at 01:40:56 GMT ERROR org.graylog2.periodical.IndexRotationThread 82 lambda$doRun$0 - Couldn't point deflector to a new index java.lang.IllegalArgumentException: [alias] is unsupported for [REMOVE_INDEX]
at org.graylog.shaded.elasticsearch7.org.elasticsearch.action.admin.indices.alias.IndicesAliasesRequest$AliasActions.alias(IndicesAliasesRequest.java:365) ~[?:?]
at org.graylog.storage.elasticsearch7.IndicesAdapterES7.removeAliases(IndicesAdapterES7.java:380) ~[?:?]
at org.graylog2.indexer.indices.Indices.removeAliases(Indices.java:322) ~[graylog.jar:?]
at org.graylog2.indexer.MongoIndexSet.cleanupAliases(MongoIndexSet.java:352) ~[graylog.jar:?]
at org.graylog2.periodical.IndexRotationThread.checkAndRepair(IndexRotationThread.java:149) ~[graylog.jar:?]
at org.graylog2.periodical.IndexRotationThread.lambda$doRun$0(IndexRotationThread.java:76) ~[graylog.jar:?]
at java.lang.Iterable.forEach(Iterable.java:75) [?:1.8.0_201]
at org.graylog2.periodical.IndexRotationThread.doRun(IndexRotationThread.java:73) [graylog.jar:?]
at org.graylog2.plugin.periodical.Periodical.run(Periodical.java:77) [graylog.jar:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_201]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:1.8.0_201]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_201]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:1.8.0_201]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_201]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_201]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201]
## Possible Solution
it seems than REMOVE_INDEX action is not supported?
public IndicesAliasesRequest.AliasActions alias(String alias) {
if (this.type == IndicesAliasesRequest.AliasActions.Type.REMOVE_INDEX) {
throw new IllegalArgumentException("[alias] is unsupported for [" + this.type + "]");
} else if (!Strings.hasLength(alias)) {
throw new IllegalArgumentException("[alias] can't be empty string");
} else {
this.aliases = new String[]{alias};
this.originalAliases = this.aliases;
return this;
}
}
* Graylog Version: 4.0.1
* Java Version: 1.8
Contributor guide
Assessment
This issue has not been assessed yet.