Fix crash in `tootctl` commands making use of parallelization when Elasticsearch is enabled (#24182)

th-downstream
Claire 2 years ago committed by GitHub
parent 336cf95418
commit c22722c5a2

@ -52,14 +52,16 @@ module Mastodon
progress.log("Processing #{item.id}") if options[:verbose] progress.log("Processing #{item.id}") if options[:verbose]
result = ActiveRecord::Base.connection_pool.with_connection do Chewy.strategy(:mastodon) do
yield(item) result = ActiveRecord::Base.connection_pool.with_connection do
ensure yield(item)
RedisConfiguration.pool.checkin if Thread.current[:redis] ensure
Thread.current[:redis] = nil RedisConfiguration.pool.checkin if Thread.current[:redis]
Thread.current[:redis] = nil
end
aggregate.increment(result) if result.is_a?(Integer)
end end
aggregate.increment(result) if result.is_a?(Integer)
rescue => e rescue => e
progress.log pastel.red("Error processing #{item.id}: #{e}") progress.log pastel.red("Error processing #{item.id}: #{e}")
ensure ensure

Loading…
Cancel
Save