Update sidekiq to version 7 (#34745)
This commit is contained in:
parent
ba5320671c
commit
37c82a3003
9 changed files with 28 additions and 27 deletions
5
Gemfile
5
Gemfile
|
@ -52,6 +52,7 @@ gem 'faraday-httpclient'
|
||||||
gem 'fast_blank', '~> 1.0'
|
gem 'fast_blank', '~> 1.0'
|
||||||
gem 'fastimage'
|
gem 'fastimage'
|
||||||
gem 'hiredis', '~> 0.6'
|
gem 'hiredis', '~> 0.6'
|
||||||
|
gem 'hiredis-client'
|
||||||
gem 'htmlentities', '~> 4.3'
|
gem 'htmlentities', '~> 4.3'
|
||||||
gem 'http', '~> 5.2.0'
|
gem 'http', '~> 5.2.0'
|
||||||
gem 'http_accept_language', '~> 2.1'
|
gem 'http_accept_language', '~> 2.1'
|
||||||
|
@ -82,10 +83,10 @@ gem 'rqrcode', '~> 3.0'
|
||||||
gem 'ruby-progressbar', '~> 1.13'
|
gem 'ruby-progressbar', '~> 1.13'
|
||||||
gem 'sanitize', '~> 7.0'
|
gem 'sanitize', '~> 7.0'
|
||||||
gem 'scenic', '~> 1.7'
|
gem 'scenic', '~> 1.7'
|
||||||
gem 'sidekiq', '~> 6.5'
|
gem 'sidekiq', '< 8'
|
||||||
gem 'sidekiq-bulk', '~> 0.2.0'
|
gem 'sidekiq-bulk', '~> 0.2.0'
|
||||||
gem 'sidekiq-scheduler', '~> 5.0'
|
gem 'sidekiq-scheduler', '~> 5.0'
|
||||||
gem 'sidekiq-unique-jobs', '~> 7.1'
|
gem 'sidekiq-unique-jobs', '> 8'
|
||||||
gem 'simple_form', '~> 5.2'
|
gem 'simple_form', '~> 5.2'
|
||||||
gem 'simple-navigation', '~> 4.4'
|
gem 'simple-navigation', '~> 4.4'
|
||||||
gem 'stoplight', '~> 4.1'
|
gem 'stoplight', '~> 4.1'
|
||||||
|
|
30
Gemfile.lock
30
Gemfile.lock
|
@ -129,9 +129,6 @@ GEM
|
||||||
brakeman (7.0.2)
|
brakeman (7.0.2)
|
||||||
racc
|
racc
|
||||||
browser (6.2.0)
|
browser (6.2.0)
|
||||||
brpoplpush-redis_script (0.1.3)
|
|
||||||
concurrent-ruby (~> 1.0, >= 1.0.5)
|
|
||||||
redis (>= 1.0, < 6)
|
|
||||||
builder (3.3.0)
|
builder (3.3.0)
|
||||||
bundler-audit (0.9.2)
|
bundler-audit (0.9.2)
|
||||||
bundler (>= 1.2.0, < 3)
|
bundler (>= 1.2.0, < 3)
|
||||||
|
@ -296,6 +293,8 @@ GEM
|
||||||
highline (3.1.2)
|
highline (3.1.2)
|
||||||
reline
|
reline
|
||||||
hiredis (0.6.3)
|
hiredis (0.6.3)
|
||||||
|
hiredis-client (0.24.0)
|
||||||
|
redis-client (= 0.24.0)
|
||||||
hkdf (0.3.0)
|
hkdf (0.3.0)
|
||||||
htmlentities (4.3.4)
|
htmlentities (4.3.4)
|
||||||
http (5.2.0)
|
http (5.2.0)
|
||||||
|
@ -702,6 +701,8 @@ GEM
|
||||||
psych (>= 4.0.0)
|
psych (>= 4.0.0)
|
||||||
redcarpet (3.6.1)
|
redcarpet (3.6.1)
|
||||||
redis (4.8.1)
|
redis (4.8.1)
|
||||||
|
redis-client (0.24.0)
|
||||||
|
connection_pool
|
||||||
redlock (1.3.2)
|
redlock (1.3.2)
|
||||||
redis (>= 3.0.0, < 6.0)
|
redis (>= 3.0.0, < 6.0)
|
||||||
regexp_parser (2.10.0)
|
regexp_parser (2.10.0)
|
||||||
|
@ -814,22 +815,22 @@ GEM
|
||||||
websocket (~> 1.0)
|
websocket (~> 1.0)
|
||||||
shoulda-matchers (6.5.0)
|
shoulda-matchers (6.5.0)
|
||||||
activesupport (>= 5.2.0)
|
activesupport (>= 5.2.0)
|
||||||
sidekiq (6.5.12)
|
sidekiq (7.3.9)
|
||||||
connection_pool (>= 2.2.5, < 3)
|
base64
|
||||||
rack (~> 2.0)
|
connection_pool (>= 2.3.0)
|
||||||
redis (>= 4.5.0, < 5)
|
logger
|
||||||
|
rack (>= 2.2.4)
|
||||||
|
redis-client (>= 0.22.2)
|
||||||
sidekiq-bulk (0.2.0)
|
sidekiq-bulk (0.2.0)
|
||||||
sidekiq
|
sidekiq
|
||||||
sidekiq-scheduler (5.0.6)
|
sidekiq-scheduler (5.0.6)
|
||||||
rufus-scheduler (~> 3.2)
|
rufus-scheduler (~> 3.2)
|
||||||
sidekiq (>= 6, < 8)
|
sidekiq (>= 6, < 8)
|
||||||
tilt (>= 1.4.0, < 3)
|
tilt (>= 1.4.0, < 3)
|
||||||
sidekiq-unique-jobs (7.1.33)
|
sidekiq-unique-jobs (8.0.10)
|
||||||
brpoplpush-redis_script (> 0.1.1, <= 2.0.0)
|
|
||||||
concurrent-ruby (~> 1.0, >= 1.0.5)
|
concurrent-ruby (~> 1.0, >= 1.0.5)
|
||||||
redis (< 5.0)
|
sidekiq (>= 7.0.0, < 8.0.0)
|
||||||
sidekiq (>= 5.0, < 7.0)
|
thor (>= 1.0, < 3.0)
|
||||||
thor (>= 0.20, < 3.0)
|
|
||||||
simple-navigation (4.4.0)
|
simple-navigation (4.4.0)
|
||||||
activesupport (>= 2.3.2)
|
activesupport (>= 2.3.2)
|
||||||
simple_form (5.3.1)
|
simple_form (5.3.1)
|
||||||
|
@ -982,6 +983,7 @@ DEPENDENCIES
|
||||||
haml_lint
|
haml_lint
|
||||||
hcaptcha (~> 7.1)
|
hcaptcha (~> 7.1)
|
||||||
hiredis (~> 0.6)
|
hiredis (~> 0.6)
|
||||||
|
hiredis-client
|
||||||
htmlentities (~> 4.3)
|
htmlentities (~> 4.3)
|
||||||
http (~> 5.2.0)
|
http (~> 5.2.0)
|
||||||
http_accept_language (~> 2.1)
|
http_accept_language (~> 2.1)
|
||||||
|
@ -1070,10 +1072,10 @@ DEPENDENCIES
|
||||||
scenic (~> 1.7)
|
scenic (~> 1.7)
|
||||||
selenium-webdriver
|
selenium-webdriver
|
||||||
shoulda-matchers
|
shoulda-matchers
|
||||||
sidekiq (~> 6.5)
|
sidekiq (< 8)
|
||||||
sidekiq-bulk (~> 0.2.0)
|
sidekiq-bulk (~> 0.2.0)
|
||||||
sidekiq-scheduler (~> 5.0)
|
sidekiq-scheduler (~> 5.0)
|
||||||
sidekiq-unique-jobs (~> 7.1)
|
sidekiq-unique-jobs (> 8)
|
||||||
simple-navigation (~> 4.4)
|
simple-navigation (~> 4.4)
|
||||||
simple_form (~> 5.2)
|
simple_form (~> 5.2)
|
||||||
simplecov (~> 0.22)
|
simplecov (~> 0.22)
|
||||||
|
|
|
@ -15,7 +15,7 @@ class RedisConnection
|
||||||
|
|
||||||
def pool_size
|
def pool_size
|
||||||
if Sidekiq.server?
|
if Sidekiq.server?
|
||||||
Sidekiq[:concurrency]
|
Sidekiq.default_configuration[:concurrency]
|
||||||
else
|
else
|
||||||
ENV['MAX_THREADS'] || 5
|
ENV['MAX_THREADS'] || 5
|
||||||
end
|
end
|
||||||
|
|
|
@ -20,7 +20,7 @@ class Scheduler::SelfDestructScheduler
|
||||||
private
|
private
|
||||||
|
|
||||||
def sidekiq_overwhelmed?
|
def sidekiq_overwhelmed?
|
||||||
redis_mem_info = Sidekiq.redis_info
|
redis_mem_info = Sidekiq.default_configuration.redis_info
|
||||||
|
|
||||||
Sidekiq::Stats.new.enqueued > MAX_ENQUEUED || redis_mem_info['used_memory'].to_f > redis_mem_info['total_system_memory'].to_f * MAX_REDIS_MEM_USAGE
|
Sidekiq::Stats.new.enqueued > MAX_ENQUEUED || redis_mem_info['used_memory'].to_f > redis_mem_info['total_system_memory'].to_f * MAX_REDIS_MEM_USAGE
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
default: &default
|
default: &default
|
||||||
adapter: postgresql
|
adapter: postgresql
|
||||||
pool: <%= ENV["DB_POOL"] || (if Sidekiq.server? then Sidekiq[:concurrency] else ENV['MAX_THREADS'] end) || 5 %>
|
pool: <%= ENV["DB_POOL"] || (if Sidekiq.server? then Sidekiq.default_configuration[:concurrency] else ENV['MAX_THREADS'] end) || 5 %>
|
||||||
timeout: 5000
|
timeout: 5000
|
||||||
connect_timeout: 15
|
connect_timeout: 15
|
||||||
encoding: unicode
|
encoding: unicode
|
||||||
|
|
|
@ -89,6 +89,8 @@ Sidekiq.configure_server do |config|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
config.logger.level = Logger.const_get(ENV.fetch('RAILS_LOG_LEVEL', 'info').upcase.to_s)
|
||||||
|
|
||||||
SidekiqUniqueJobs::Server.configure(config)
|
SidekiqUniqueJobs::Server.configure(config)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -98,9 +100,9 @@ Sidekiq.configure_client do |config|
|
||||||
config.client_middleware do |chain|
|
config.client_middleware do |chain|
|
||||||
chain.add SidekiqUniqueJobs::Middleware::Client
|
chain.add SidekiqUniqueJobs::Middleware::Client
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
Sidekiq.logger.level = ::Logger.const_get(ENV.fetch('RAILS_LOG_LEVEL', 'info').upcase.to_s)
|
config.logger.level = Logger.const_get(ENV.fetch('RAILS_LOG_LEVEL', 'info').upcase.to_s)
|
||||||
|
end
|
||||||
|
|
||||||
SidekiqUniqueJobs.configure do |config|
|
SidekiqUniqueJobs.configure do |config|
|
||||||
config.enabled = !Rails.env.test?
|
config.enabled = !Rails.env.test?
|
||||||
|
|
|
@ -9,7 +9,6 @@ class Mastodon::RedisConfiguration
|
||||||
|
|
||||||
def base
|
def base
|
||||||
@base ||= setup_config(prefix: nil, defaults: DEFAULTS)
|
@base ||= setup_config(prefix: nil, defaults: DEFAULTS)
|
||||||
.merge(namespace: nil)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def sidekiq
|
def sidekiq
|
||||||
|
@ -23,7 +22,7 @@ class Mastodon::RedisConfiguration
|
||||||
expires_in: 10.minutes,
|
expires_in: 10.minutes,
|
||||||
connect_timeout: 5,
|
connect_timeout: 5,
|
||||||
pool: {
|
pool: {
|
||||||
size: Sidekiq.server? ? Sidekiq[:concurrency] : Integer(ENV['MAX_THREADS'] || 5),
|
size: Sidekiq.server? ? Sidekiq.default_configuration[:concurrency] : Integer(ENV['MAX_THREADS'] || 5),
|
||||||
timeout: 5,
|
timeout: 5,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
|
@ -156,7 +156,6 @@ RSpec.describe Mastodon::RedisConfiguration do
|
||||||
expect(subject).to eq({
|
expect(subject).to eq({
|
||||||
url: 'redis://localhost:6379/0',
|
url: 'redis://localhost:6379/0',
|
||||||
driver: :hiredis,
|
driver: :hiredis,
|
||||||
namespace: nil,
|
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -172,7 +171,6 @@ RSpec.describe Mastodon::RedisConfiguration do
|
||||||
expect(subject).to eq({
|
expect(subject).to eq({
|
||||||
url: 'redis::/user@example.com/2',
|
url: 'redis::/user@example.com/2',
|
||||||
driver: :hiredis,
|
driver: :hiredis,
|
||||||
namespace: nil,
|
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -188,7 +186,6 @@ RSpec.describe Mastodon::RedisConfiguration do
|
||||||
expect(subject).to eq({
|
expect(subject).to eq({
|
||||||
url: 'redis://:testpass@redis.example.com:3333/3',
|
url: 'redis://:testpass@redis.example.com:3333/3',
|
||||||
driver: :hiredis,
|
driver: :hiredis,
|
||||||
namespace: nil,
|
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -53,7 +53,7 @@ WebMock.disable_net_connect!(
|
||||||
allow_localhost: true,
|
allow_localhost: true,
|
||||||
allow: Chewy.settings[:host]
|
allow: Chewy.settings[:host]
|
||||||
)
|
)
|
||||||
Sidekiq.logger = nil
|
Sidekiq.default_configuration.logger = nil
|
||||||
|
|
||||||
DatabaseCleaner.strategy = [:deletion]
|
DatabaseCleaner.strategy = [:deletion]
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue