Merge pull request #49 from puppetlabs/update_for_redis_5

(maint) Update Gemfile.lock and use block for transaction.
This commit is contained in:
isaac-hammes 2023-08-28 07:48:31 -07:00 committed by GitHub
commit b4819f2d39
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 27 additions and 24 deletions

View file

@ -34,11 +34,11 @@ GEM
net-ldap (0.18.0) net-ldap (0.18.0)
nio4r (2.5.9) nio4r (2.5.9)
nio4r (2.5.9-java) nio4r (2.5.9-java)
nokogiri (1.15.3-java) nokogiri (1.15.4-java)
racc (~> 1.4) racc (~> 1.4)
nokogiri (1.15.3-x86_64-linux) nokogiri (1.15.4-x86_64-linux)
racc (~> 1.4) racc (~> 1.4)
opentelemetry-api (1.2.1) opentelemetry-api (1.2.2)
opentelemetry-common (0.20.0) opentelemetry-common (0.20.0)
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-exporter-jaeger (0.23.0) opentelemetry-exporter-jaeger (0.23.0)
@ -96,9 +96,9 @@ GEM
coderay (~> 1.1) coderay (~> 1.1)
method_source (~> 1.0) method_source (~> 1.0)
spoon (~> 0.0) spoon (~> 0.0)
puma (6.3.0) puma (6.3.1)
nio4r (~> 2.0) nio4r (~> 2.0)
puma (6.3.0-java) puma (6.3.1-java)
nio4r (~> 2.0) nio4r (~> 2.0)
racc (1.7.1) racc (1.7.1)
racc (1.7.1-java) racc (1.7.1-java)
@ -114,7 +114,10 @@ GEM
json (~> 2.3) json (~> 2.3)
nokogiri (~> 1.12, >= 1.12.5) nokogiri (~> 1.12, >= 1.12.5)
optimist (~> 3.0) optimist (~> 3.0)
redis (4.8.1) redis (5.0.7)
redis-client (>= 0.9.0)
redis-client (0.16.0)
connection_pool
regexp_parser (2.8.1) regexp_parser (2.8.1)
rexml (3.2.6) rexml (3.2.6)
rspec (3.12.0) rspec (3.12.0)
@ -163,9 +166,9 @@ GEM
thrift (0.18.1) thrift (0.18.1)
tilt (2.2.0) tilt (2.2.0)
unicode-display_width (2.4.2) unicode-display_width (2.4.2)
vmpooler (3.2.0) vmpooler (3.5.1)
concurrent-ruby (~> 1.1) concurrent-ruby (~> 1.1)
connection_pool (~> 2.2) connection_pool (~> 2.4)
deep_merge (~> 1.2) deep_merge (~> 1.2)
net-ldap (~> 0.16) net-ldap (~> 0.16)
opentelemetry-exporter-jaeger (= 0.23.0) opentelemetry-exporter-jaeger (= 0.23.0)
@ -180,7 +183,7 @@ GEM
puma (>= 5.0.4, < 7) puma (>= 5.0.4, < 7)
rack (>= 2.2, < 4.0) rack (>= 2.2, < 4.0)
rake (~> 13.0) rake (~> 13.0)
redis (~> 4.1) redis (~> 5.0)
sinatra (>= 2, < 4) sinatra (>= 2, < 4)
spicy-proton (~> 2.1) spicy-proton (~> 2.1)
statsd-ruby (~> 1.4) statsd-ruby (~> 1.4)

View file

@ -68,14 +68,14 @@ module Vmpooler
try = 0 if try.nil? try = 0 if try.nil?
max_tries = 3 max_tries = 3
@redis.with_metrics do |redis| @redis.with_metrics do |redis|
redis.multi redis.multi do |transaction|
redis.srem("vmpooler__completed__#{pool}", vm_name) transaction.srem("vmpooler__completed__#{pool}", vm_name)
redis.hdel("vmpooler__active__#{pool}", vm_name) transaction.hdel("vmpooler__active__#{pool}", vm_name)
redis.hset("vmpooler__vm__#{vm_name}", 'destroy', Time.now) transaction.hset("vmpooler__vm__#{vm_name}", 'destroy', Time.now)
# Auto-expire metadata key # Auto-expire metadata key
redis.expire("vmpooler__vm__#{vm_name}", (data_ttl * 60 * 60)) transaction.expire("vmpooler__vm__#{vm_name}", (data_ttl * 60 * 60))
redis.exec end
end end
start = Time.now start = Time.now
@ -1137,10 +1137,10 @@ module Vmpooler
target_host_object = find_host_by_dnsname(connection, target_host_name) target_host_object = find_host_by_dnsname(connection, target_host_name)
finish = migrate_vm_and_record_timing(pool_name, vm_name, vm_hash, target_host_object, target_host_name) finish = migrate_vm_and_record_timing(pool_name, vm_name, vm_hash, target_host_object, target_host_name)
@redis.with_metrics do |redis| @redis.with_metrics do |redis|
redis.multi redis.multi do |transaction|
redis.hset("vmpooler__vm__#{vm_name}", 'host', target_host_name) transaction.hset("vmpooler__vm__#{vm_name}", 'host', target_host_name)
redis.hset("vmpooler__vm__#{vm_name}", 'migrated', true) transaction.hset("vmpooler__vm__#{vm_name}", 'migrated', true)
redis.exec end
end end
logger.log('s', "[>] [#{pool_name}] '#{vm_name}' migrated from #{vm_hash['host_name']} to #{target_host_name} in #{finish} seconds") logger.log('s', "[>] [#{pool_name}] '#{vm_name}' migrated from #{vm_hash['host_name']} to #{target_host_name} in #{finish} seconds")
ensure ensure
@ -1158,10 +1158,10 @@ module Vmpooler
metrics.increment("migrate_to.#{dest_host_name}") metrics.increment("migrate_to.#{dest_host_name}")
@redis.with_metrics do |redis| @redis.with_metrics do |redis|
checkout_to_migration = format('%<time>.2f', time: Time.now - Time.parse(redis.hget("vmpooler__vm__#{vm_name}", 'checkout'))) checkout_to_migration = format('%<time>.2f', time: Time.now - Time.parse(redis.hget("vmpooler__vm__#{vm_name}", 'checkout')))
redis.multi redis.multi do |transaction|
redis.hset("vmpooler__vm__#{vm_name}", 'migration_time', finish) transaction.hset("vmpooler__vm__#{vm_name}", 'migration_time', finish)
redis.hset("vmpooler__vm__#{vm_name}", 'checkout_to_migration', checkout_to_migration) transaction.hset("vmpooler__vm__#{vm_name}", 'checkout_to_migration', checkout_to_migration)
redis.exec end
end end
finish finish
end end