From 83152b3835d1ec3d5879638cc2661534a388e8ee Mon Sep 17 00:00:00 2001 From: Martijn van Groningen Date: Fri, 9 Nov 2018 14:24:27 +0100 Subject: [PATCH] [CCR] Get all auto follow patterns and no auto follow metadata (#35381) Return empty response when querying all auto follow patterns, but there is no auto follow metadata. --- .../ccr/action/TransportGetAutoFollowPatternAction.java | 6 +++++- .../action/TransportGetAutoFollowPatternActionTests.java | 6 ++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/x-pack/plugin/ccr/src/main/java/org/elasticsearch/xpack/ccr/action/TransportGetAutoFollowPatternAction.java b/x-pack/plugin/ccr/src/main/java/org/elasticsearch/xpack/ccr/action/TransportGetAutoFollowPatternAction.java index fc7c0c49206..f3fd4149ed3 100644 --- a/x-pack/plugin/ccr/src/main/java/org/elasticsearch/xpack/ccr/action/TransportGetAutoFollowPatternAction.java +++ b/x-pack/plugin/ccr/src/main/java/org/elasticsearch/xpack/ccr/action/TransportGetAutoFollowPatternAction.java @@ -72,7 +72,11 @@ public class TransportGetAutoFollowPatternAction static Map getAutoFollowPattern(MetaData metaData, String name) { AutoFollowMetadata autoFollowMetadata = metaData.custom(AutoFollowMetadata.TYPE); if (autoFollowMetadata == null) { - throw new ResourceNotFoundException("auto-follow pattern [{}] is missing", name); + if (name == null) { + return Collections.emptyMap(); + } else { + throw new ResourceNotFoundException("auto-follow pattern [{}] is missing", name); + } } if (name == null) { diff --git a/x-pack/plugin/ccr/src/test/java/org/elasticsearch/xpack/ccr/action/TransportGetAutoFollowPatternActionTests.java b/x-pack/plugin/ccr/src/test/java/org/elasticsearch/xpack/ccr/action/TransportGetAutoFollowPatternActionTests.java index e2c7f327ab9..85e1bf916aa 100644 --- a/x-pack/plugin/ccr/src/test/java/org/elasticsearch/xpack/ccr/action/TransportGetAutoFollowPatternActionTests.java +++ b/x-pack/plugin/ccr/src/test/java/org/elasticsearch/xpack/ccr/action/TransportGetAutoFollowPatternActionTests.java @@ -52,12 +52,18 @@ public class TransportGetAutoFollowPatternActionTests extends ESTestCase { .build(); expectThrows(ResourceNotFoundException.class, () -> TransportGetAutoFollowPatternAction.getAutoFollowPattern(metaData, "name1")); + + Map result = TransportGetAutoFollowPatternAction.getAutoFollowPattern(metaData, null); + assertThat(result.size(), equalTo(0)); } public void testGetAutoFollowPatternNoAutoFollowMetadata() { MetaData metaData = MetaData.builder().build(); expectThrows(ResourceNotFoundException.class, () -> TransportGetAutoFollowPatternAction.getAutoFollowPattern(metaData, "name1")); + + Map result = TransportGetAutoFollowPatternAction.getAutoFollowPattern(metaData, null); + assertThat(result.size(), equalTo(0)); } }