|
8 | 8 |
|
9 | 9 | package org.opensearch.plugin.kafka; |
10 | 10 |
|
11 | | -import com.carrotsearch.randomizedtesting.annotations.ThreadLeakLingering; |
| 11 | +import com.carrotsearch.randomizedtesting.annotations.ThreadLeakScope; |
12 | 12 |
|
13 | 13 | import org.apache.kafka.clients.producer.KafkaProducer; |
14 | 14 | import org.apache.kafka.clients.producer.Producer; |
|
45 | 45 | /** |
46 | 46 | * Integration test for Kafka ingestion |
47 | 47 | */ |
48 | | -@ThreadLeakLingering(linger = 15000) // wait for container pull thread to die |
| 48 | +@ThreadLeakScope(ThreadLeakScope.Scope.NONE) |
49 | 49 | public class IngestFromKafkaIT extends OpenSearchIntegTestCase { |
50 | 50 | static final String topicName = "test"; |
51 | 51 |
|
@@ -75,29 +75,31 @@ public void testPluginsAreInstalled() { |
75 | 75 | } |
76 | 76 |
|
77 | 77 | public void testKafkaIngestion() { |
78 | | - setupKafka(); |
79 | | - // create an index with ingestion source from kafka |
80 | | - createIndex( |
81 | | - "test", |
82 | | - Settings.builder() |
83 | | - .put(IndexMetadata.SETTING_NUMBER_OF_SHARDS, 1) |
84 | | - .put(IndexMetadata.SETTING_NUMBER_OF_REPLICAS, 0) |
85 | | - .put("ingestion_source.type", "kafka") |
86 | | - .put("ingestion_source.pointer.init.reset", "earliest") |
87 | | - .put("ingestion_source.param.topic", "test") |
88 | | - .put("ingestion_source.param.bootstrap_servers", kafka.getBootstrapServers()) |
89 | | - .build(), |
90 | | - "{\"properties\":{\"name\":{\"type\": \"text\"},\"age\":{\"type\": \"integer\"}}}}" |
91 | | - ); |
92 | | - |
93 | | - RangeQueryBuilder query = new RangeQueryBuilder("age").gte(21); |
94 | | - await().atMost(10, TimeUnit.SECONDS).untilAsserted(() -> { |
95 | | - refresh("test"); |
96 | | - SearchResponse response = client().prepareSearch("test").setQuery(query).get(); |
97 | | - assertThat(response.getHits().getTotalHits().value(), is(1L)); |
98 | | - }); |
99 | | - |
100 | | - stopKafka(); |
| 78 | + try { |
| 79 | + setupKafka(); |
| 80 | + // create an index with ingestion source from kafka |
| 81 | + createIndex( |
| 82 | + "test", |
| 83 | + Settings.builder() |
| 84 | + .put(IndexMetadata.SETTING_NUMBER_OF_SHARDS, 1) |
| 85 | + .put(IndexMetadata.SETTING_NUMBER_OF_REPLICAS, 0) |
| 86 | + .put("ingestion_source.type", "kafka") |
| 87 | + .put("ingestion_source.pointer.init.reset", "earliest") |
| 88 | + .put("ingestion_source.param.topic", "test") |
| 89 | + .put("ingestion_source.param.bootstrap_servers", kafka.getBootstrapServers()) |
| 90 | + .build(), |
| 91 | + "{\"properties\":{\"name\":{\"type\": \"text\"},\"age\":{\"type\": \"integer\"}}}}" |
| 92 | + ); |
| 93 | + |
| 94 | + RangeQueryBuilder query = new RangeQueryBuilder("age").gte(21); |
| 95 | + await().atMost(10, TimeUnit.SECONDS).untilAsserted(() -> { |
| 96 | + refresh("test"); |
| 97 | + SearchResponse response = client().prepareSearch("test").setQuery(query).get(); |
| 98 | + assertThat(response.getHits().getTotalHits().value(), is(1L)); |
| 99 | + }); |
| 100 | + } finally { |
| 101 | + stopKafka(); |
| 102 | + } |
101 | 103 | } |
102 | 104 |
|
103 | 105 | private void setupKafka() { |
|
0 commit comments