File tree Expand file tree Collapse file tree 2 files changed +55
-0
lines changed
templates/swift/guides/search Expand file tree Collapse file tree 2 files changed +55
-0
lines changed Original file line number Diff line number Diff line change 1+ import Foundation
2+ #if os(Linux) // For linux interop
3+ import FoundationNetworking
4+ #endif
5+
6+ import Core
7+ { {> snippets/import} }
8+
9+ func deleteMultipleIndices() async throws {
10+ do {
11+ // You need an API key with `deleteIndex`
12+ {{> snippets/init} }
13+
14+ // List all indices
15+ let indices = try await client.listIndices()
16+
17+ // Primary indices don't have a `primary` key
18+ let primaryIndices = indices.items.filter { $0.primary == nil }
19+ let replicaIndices = indices.items.filter { $0.primary != nil }
20+
21+ // Delete primary indices first
22+ if primaryIndices.isEmpty == false {
23+ let requests = primaryIndices.map { MultipleBatchRequest(
24+ action: .delete,
25+ indexName: $0.name
26+ ) }
27+ { {#dynamicSnippet} }deleteMultipleIndicesPrimary{ {/dynamicSnippet} }
28+ print("Deleted primary indices.")
29+ }
30+
31+ // Now, delete replica indices
32+ if replicaIndices.isEmpty == false {
33+ let requests = replicaIndices.map { MultipleBatchRequest(
34+ action: .delete,
35+ indexName: $0.name
36+ ) }
37+ { {#dynamicSnippet} }deleteMultipleIndicesReplica{ {/dynamicSnippet} }
38+ print("Deleted replica indices.")
39+ }
40+ } catch {
41+ print(error)
42+ }
43+ }
Original file line number Diff line number Diff line change 1212 "indexName" : " actors" ,
1313 "objects" : " $var: chunks"
1414 }
15+ },
16+ "deleteMultipleIndicesPrimary" : {
17+ "method" : " multipleBatch" ,
18+ "parameters" : {
19+ "requests" : " $var: requests"
20+ }
21+ },
22+ "deleteMultipleIndicesReplica" : {
23+ "method" : " multipleBatch" ,
24+ "parameters" : {
25+ "requests" : " $var: requests"
26+ }
1527 }
1628}
You can’t perform that action at this time.
0 commit comments