|
10 | 10 | import org.elasticsearch.cluster.metadata.AliasMetadata;
|
11 | 11 | import org.elasticsearch.cluster.metadata.IndexMetadata;
|
12 | 12 | import org.elasticsearch.cluster.metadata.Metadata;
|
| 13 | +import org.elasticsearch.index.IndexNotFoundException; |
13 | 14 | import org.elasticsearch.index.IndexVersion;
|
14 | 15 | import org.elasticsearch.index.query.MatchQueryBuilder;
|
15 | 16 | import org.elasticsearch.search.builder.SearchSourceBuilder;
|
|
21 | 22 | import java.util.List;
|
22 | 23 | import java.util.Map;
|
23 | 24 |
|
| 25 | +import static org.hamcrest.Matchers.containsString; |
24 | 26 | import static org.hamcrest.Matchers.equalTo;
|
25 | 27 | import static org.hamcrest.Matchers.not;
|
26 | 28 | import static org.hamcrest.Matchers.notNullValue;
|
@@ -183,4 +185,22 @@ public void testDeepCopy() {
|
183 | 185 | assertArrayEquals(new byte[] { 1, 2, 3 }, (byte[]) result.get("embedded_object"));
|
184 | 186 | }
|
185 | 187 |
|
| 188 | + public void testEnrichIndexNotExist() { |
| 189 | + // Emulate cluster metadata: |
| 190 | + var metadata = Metadata.builder().build(); |
| 191 | + |
| 192 | + // Emulated search request on a non-exist enrich index that an enrich processor could generate |
| 193 | + var searchRequest = new SearchRequest(EnrichPolicy.getBaseName("policy-enrich-index-not-generated")).source( |
| 194 | + new SearchSourceBuilder().query(new MatchQueryBuilder("test", "query")) |
| 195 | + ); |
| 196 | + // Emulated search response (content doesn't matter, since it isn't used, it just a cache entry) |
| 197 | + List<Map<?, ?>> searchResponse = List.of(Map.of("test", "entry")); |
| 198 | + |
| 199 | + EnrichCache enrichCache = new EnrichCache(1); |
| 200 | + enrichCache.setMetadata(metadata); |
| 201 | + |
| 202 | + IndexNotFoundException e = expectThrows(IndexNotFoundException.class, () -> enrichCache.put(searchRequest, searchResponse)); |
| 203 | + assertThat(e.getMessage(), containsString("no generated enrich index [.enrich-policy-enrich-index-not-generated]")); |
| 204 | + } |
| 205 | + |
186 | 206 | }
|
0 commit comments