Selaa lähdekoodia

Properly handle wildcards in data stream deletion requests (#78463)

Dan Hermann 4 vuotta sitten
vanhempi
commit
9d5395e9d8

+ 0 - 1
x-pack/plugin/data-streams/src/main/java/org/elasticsearch/xpack/datastreams/action/DeleteDataStreamTransportAction.java

@@ -86,7 +86,6 @@ public class DeleteDataStreamTransportAction extends AcknowledgedTransportMaster
         for (String name : names) {
             systemIndices.validateDataStreamAccess(name, threadPool.getThreadContext());
         }
-        request.indices(names.toArray(Strings.EMPTY_ARRAY));
 
         clusterService.submitStateUpdateTask(
             "remove-data-stream [" + Strings.arrayToCommaDelimitedString(request.getNames()) + "]",

+ 37 - 0
x-pack/plugin/src/yamlRestTest/resources/rest-api-spec/test/data_stream/10_basic.yml

@@ -403,6 +403,43 @@ setup:
       indices.delete_data_stream:
         name: simple-data-stream2
 
+---
+"Delete data stream by wildcard":
+  - skip:
+      version: " - 7.99.99"
+      reason: "change to [-7.8.99] and [data streams only supported in 7.9+] after backport"
+
+  - do:
+      indices.create_data_stream:
+        name: simple-data-stream1
+  - is_true: acknowledged
+
+  - do:
+      indices.create_data_stream:
+        name: simple-data-stream2
+  - is_true: acknowledged
+
+  - do:
+      indices.delete_data_stream:
+        name: no-matching-data-streams*
+  - is_true: acknowledged
+
+  - do:
+      indices.get_data_stream:
+        name: "*"
+  - match: { data_streams.0.name: simple-data-stream1 }
+  - match: { data_streams.1.name: simple-data-stream2 }
+
+  - do:
+      indices.delete_data_stream:
+        name: simple-data-stream*
+  - is_true: acknowledged
+
+  - do:
+      indices.get_data_stream:
+        name: "*"
+  - length: { data_streams: 0 }
+
 ---
 "append-only writes to backing indices prohibited":
   - skip: