elasticsearch-drain 0.1.1 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: eb751f23604391d421be5540c9006217eb0d91b3
4
- data.tar.gz: deb14051a07a1efd61162ff3f489c80c8513a54f
3
+ metadata.gz: c9c1dcd8e2979f4615c0d91ac2cadea04efd35d0
4
+ data.tar.gz: 2ed236883027d0f62c566d8a6456cc3be9798915
5
5
  SHA512:
6
- metadata.gz: 3935ee1cabb06227d9f21375e90deabf10f7c552089c84ee014ef78a1527d8b3c5a65c17126696824f3cc21574c6fee9e178e6dc1da52326328a7ee43ac7b6c4
7
- data.tar.gz: 263a73535b0908e021da6f4f4028efd1ac4e7fdb0c6f7be70e2ad2905c4a77ee511d09d9170f84bfb7d9ae0d1c9e5550f5026bd90641cd9986c965772edab166
6
+ metadata.gz: a1b9fd4deb9beef5dc1294d4844aa1e6fd8178ea29ba9a08eab1cc4f9a06627358bd5704356b2ce20327dcac51914924b5f450b01edbc50cff1381ea6d38d851
7
+ data.tar.gz: 89931bebc10cc5ad4e3b1270f8138e7bb1e72694b0b61c1fb3698f3974dbba03dd91e4857ebeec3a602479158cc80882c9e3009d9d5e5272a30e05bc2bffe1e9
@@ -76,10 +76,13 @@ module Elasticsearch
76
76
  @active_nodes = nodes unless options[:continue]
77
77
 
78
78
  drain_nodes(nodes)
79
- remove_nodes(nodes)
79
+ deleted_nodes = remove_nodes(nodes)
80
80
 
81
81
  # Remove the drained nodes from the list of active_nodes
82
- @active_nodes -= nodes
82
+ say_status "deleted nodes", "deleted_nodes=#{deleted_nodes}", "green"
83
+ say_status "pre-subtract", "active_nodes=#{active_nodes}", "green"
84
+ @active_nodes -= deleted_nodes
85
+ say_status "post-subtract", "active_nodes=#{active_nodes}", "green"
83
86
 
84
87
  unless active_nodes.empty?
85
88
  say_status 'Drain Nodes', "#{active_nodes.length} nodes remaining", :green
@@ -119,9 +122,8 @@ module Elasticsearch
119
122
  (min_size - nodes.length) <= 0 ? 0 : (min_size - nodes.length)
120
123
  else
121
124
  # Removing the nodes will result in the min_size being violated
122
- desired_capacity - nodes.length
125
+ (desired_capacity - nodes.length) <= 0 ? 0 : (desired_capacity - nodes.length)
123
126
  end
124
- say_status 'Debug', 'min_size = #{min_size}, desired_capacity = #{desired_capacity}, desired_min_size = #{desired_min_size}', :magenta
125
127
  desired_min_size
126
128
  end
127
129
 
@@ -143,6 +145,7 @@ module Elasticsearch
143
145
  end
144
146
 
145
147
  def remove_nodes(nodes) # rubocop:disable Metrics/MethodLength
148
+ deleted_nodes = []
146
149
  while nodes.length > 0
147
150
  sleep_time = wait_sleep_time
148
151
  nodes.each do |instance|
@@ -152,6 +155,7 @@ module Elasticsearch
152
155
  sleep sleep_time
153
156
  else
154
157
  next unless remove_node(instance)
158
+ deleted_nodes.push(nodes.select { |n| n.ipaddress == instance.ipaddress }
155
159
  nodes.delete_if { |n| n.ipaddress == instance.ipaddress }
156
160
  break if nodes.length < 1
157
161
  say_status 'Waiting', 'Sleeping for 1 minute before removing the next node', :green
@@ -159,6 +163,7 @@ module Elasticsearch
159
163
  end
160
164
  end
161
165
  end
166
+ deleted_nodes
162
167
  end
163
168
 
164
169
  def remove_node(instance) # rubocop:disable Metrics/MethodLength
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elasticsearch-drain
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Thompson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-17 00:00:00.000000000 Z
11
+ date: 2020-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler