From f08dbcd8c61c8a4eb2e2c6e627617c0947f64838 Mon Sep 17 00:00:00 2001 From: Costin Leau Date: Tue, 4 Sep 2018 21:30:35 +0300 Subject: [PATCH] SQL: Improve alias vs index resolution Improve pattern resolution for aliases vs indices --- .../xpack/sql/analysis/index/IndexResolver.java | 9 +++++++-- x-pack/qa/sql/src/main/resources/command.csv-spec | 8 ++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/x-pack/plugin/sql/src/main/java/org/elasticsearch/xpack/sql/analysis/index/IndexResolver.java b/x-pack/plugin/sql/src/main/java/org/elasticsearch/xpack/sql/analysis/index/IndexResolver.java index 2b5f6111b6e01..0382729aa9f01 100644 --- a/x-pack/plugin/sql/src/main/java/org/elasticsearch/xpack/sql/analysis/index/IndexResolver.java +++ b/x-pack/plugin/sql/src/main/java/org/elasticsearch/xpack/sql/analysis/index/IndexResolver.java @@ -16,6 +16,8 @@ import org.elasticsearch.action.admin.indices.get.GetIndexRequest.Feature; import org.elasticsearch.action.admin.indices.get.GetIndexResponse; import org.elasticsearch.action.support.IndicesOptions; +import org.elasticsearch.action.support.IndicesOptions.Option; +import org.elasticsearch.action.support.IndicesOptions.WildcardStates; import org.elasticsearch.client.Client; import org.elasticsearch.cluster.metadata.AliasMetaData; import org.elasticsearch.cluster.metadata.MappingMetaData; @@ -117,6 +119,10 @@ public boolean equals(Object obj) { } } + private static final IndicesOptions INDICES_ONLY_OPTIONS = new IndicesOptions( + EnumSet.of(Option.ALLOW_NO_INDICES, Option.IGNORE_UNAVAILABLE, Option.IGNORE_ALIASES), EnumSet.of(WildcardStates.OPEN)); + + private final Client client; private final String clusterName; @@ -144,7 +150,6 @@ public void resolveNames(String indexWildcard, String javaRegex, EnumSet filterResults(javaRegex, aliases, response, listener), diff --git a/x-pack/qa/sql/src/main/resources/command.csv-spec b/x-pack/qa/sql/src/main/resources/command.csv-spec index 8c56ca8609029..77d397fa2b5be 100644 --- a/x-pack/qa/sql/src/main/resources/command.csv-spec +++ b/x-pack/qa/sql/src/main/resources/command.csv-spec @@ -174,6 +174,14 @@ test_emp_copy |BASE TABLE test_emp_with_nulls|BASE TABLE ; +showTablesIdentifierPatternOnAliases +SHOW TABLES "test*,-test_emp*"; + + name:s | type:s +test_alias |ALIAS +test_alias_emp |ALIAS +; + // DESCRIBE describeSimpleLike