https://github.com/mperham/sidekiq

sort by:
Revision Author Date Message Commit Date
b1bdaa7 Verify connection pool sizing, fixes #3917 07 August 2018, 15:17:59 UTC
03e63b8 Add TTL for stats keys This change adds a 5 years TTL on redis keys containing daily stats. See #3905 for more details 06 August 2018, 17:57:28 UTC
e339d23 Add CSP header to web admin to ensure it matches needs (#3913) 05 August 2018, 19:31:37 UTC
778b9cf changes 05 August 2018, 18:01:04 UTC
35cdf82 Merge branch 'master' of github.com:mperham/sidekiq 03 August 2018, 23:02:51 UTC
353c95d Updated bootstrap with glyphicons removed, fixes #3914 03 August 2018, 23:02:41 UTC
fa8a943 Remove superfluous executable bit 03 August 2018, 23:00:17 UTC
2929413 Merge branch 'master' of github.com:mperham/sidekiq 01 August 2018, 16:36:45 UTC
173ce98 Convert queue name to string, fixes #3907 01 August 2018, 16:36:37 UTC
24ac099 Merge branch 'master' of github.com:mperham/sidekiq 31 July 2018, 17:47:50 UTC
3cadbce changes 31 July 2018, 17:47:43 UTC
95f8fc1 preserve the jid even if it contains - https://github.com/akira/exq uses UUID as jid which contains `-`. The current behaviour parses the jid incorrectly, which prevents some of functionalities in web UI like Retry Now, Delete etc from working correctly. 27 July 2018, 17:26:36 UTC
fbd6e22 Bumpski! 20 July 2018, 17:54:41 UTC
8ff96ae Decrease default concurrency, fixes #3892 More threads means more memory usage AND increased glibc memory bloat due to arena contention. Remember to set MALLOC_ARENA_MAX=2 to minimize your bloat. You can get the old concurrency by adding `-c 25` to your Sidekiq command line. 20 July 2018, 17:54:31 UTC
e4b7b91 changes 20 July 2018, 17:48:46 UTC
ea3beee Remove the 2x, further comments 20 July 2018, 17:48:46 UTC
8a589d6 Better scheduling for large clusters, fixes #3889 Today we add 50% to the sleep time so that processes cluster around the target time: 50% --> target <-- 150% This works well for small clusters, e.g. less than 10 processes. The problem is that, for large clusters, the processes will never sleep less than 50% of (process_count * poll average) which breaks the average and delays job scheduling for several minutes. Instead, beyond 10 processes, don't add that 50% buffer. Allow the processes to sleep anywhere within the timespan: 0% --> target <-- 200% With many processes, the average sleep within a 200% time period should work out close enough to 100%. 20 July 2018, 17:48:46 UTC
2483e9d Update ES translation In Spanish "queue" can be translated as "cola" or "fila". The latter translation has a meaning of "aligning some objects" (like "row" in English). 10 July 2018, 00:42:03 UTC
63fddb1 fix charset attribute of Web UI meta element 'utf8' is not valid standard IANA MIME name for character encodings. 06 July 2018, 12:07:17 UTC
52562b7 changes 21 June 2018, 18:18:59 UTC
f867fd5 Merge branch 'master' of github.com:mperham/sidekiq 21 June 2018, 18:16:07 UTC
9f12a77 Upgrade to Rails 5.2 skeleton 21 June 2018, 18:14:54 UTC
2b20e4c refactoring 31 May 2018, 17:47:27 UTC
849547c move redis_iterator test to its own file 31 May 2018, 17:47:27 UTC
b46144c extend instead of include 31 May 2018, 17:47:27 UTC
6cffb63 move sscan to a module 31 May 2018, 17:47:27 UTC
64b941b remove smembers calls from the pipeline as they've been replaced by sscan calls 31 May 2018, 17:47:27 UTC
9699377 decrease redis latency by switching smembers queries to sscan; relates to #3848 31 May 2018, 17:47:27 UTC
28dcf55 polish, changes, bump 30 May 2018, 16:57:37 UTC
e942dfb change alias method to prepend in testing module 30 May 2018, 16:41:46 UTC
ed6d3cb release 403 21 May 2018, 16:39:07 UTC
69e314a freshen push_bulk rdoc 15 May 2018, 18:27:49 UTC
e2e8bfc batch death 10 May 2018, 17:54:14 UTC
f31ed4e Memoize namespace with instance variable. 07 May 2018, 02:25:52 UTC
6e79f2a add memory tuning to examples 30 April 2018, 00:58:19 UTC
822a75d Remove concurrent-ruby dependency, fixes #3830 26 April 2018, 21:02:03 UTC
b58c505 oops 26 April 2018, 20:45:59 UTC
c18c19a Remove unnecessary dev deps from gemspec, move into gemfile. 26 April 2018, 20:40:45 UTC
b2c8bc6 Implement our own atomic counter, #3830 23 April 2018, 22:46:58 UTC
ad6bb6a 3823 13 April 2018, 16:27:51 UTC
873f1df changes, release 02 April 2018, 16:04:41 UTC
bca9396 Fix Ruby version comparison This line previously failed against 2.2.10. 29 March 2018, 20:07:14 UTC
6614abd release 29 March 2018, 19:08:40 UTC
c262f76 release 29 March 2018, 19:04:02 UTC
b23c0ec Use `RAILS_MAX_THREADS` for client pool size This is a follow up to #2985 (52828e4) adding similar support for the client connection pool. For Rails servers, Sidekiq is not loaded from the CLI so the prior change to support setting the concurrency via `RAILS_MAX_THREADS` is not applied to the web server process. This means for Rails servers which do not configure a custom size through an initializer they will run with the default connection pool size of 5. When the Rails server runs the initial Redis connection may be made through `Sidekiq::Client` (e.g. from [`ActiveJob::QueueAdapters::SidekiqAdapter`](https://github.com/rails/rails/blob/v5.1.5/activejob/lib/active_job/queue_adapters/sidekiq_adapter.rb#L20)). This causes the `redis_pool` to be initialized without any options, setting the pool size to the default of 5. .gem/ruby/2.5.0/gems/sidekiq-5.1.1/lib/sidekiq.rb:125:in `redis_pool' .gem/ruby/2.5.0/gems/sidekiq-5.1.1/lib/sidekiq/client.rb:42:in `initialize' .gem/ruby/2.5.0/gems/sidekiq-5.1.1/lib/sidekiq/client.rb:131:in `new' .gem/ruby/2.5.0/gems/sidekiq-5.1.1/lib/sidekiq/client.rb:131:in `push' .gem/ruby/2.5.0/gems/activejob-5.1.5/lib/active_job/queue_adapters/sidekiq_adapter.rb:20:in `enqueue' .gem/ruby/2.5.0/gems/activejob-5.1.5/lib/active_job/enqueuing.rb:51:in `block in enqueue' .gem/ruby/2.5.0/gems/activesupport-5.1.5/lib/active_support/callbacks.rb:108:in `block in run_callbacks' .gem/ruby/2.5.0/gems/activejob-5.1.5/lib/active_job/logging.rb:15:in `block (3 levels) in <module:Logging>' .gem/ruby/2.5.0/gems/activejob-5.1.5/lib/active_job/logging.rb:44:in `block in tag_logger' .gem/ruby/2.5.0/gems/activesupport-5.1.5/lib/active_support/tagged_logging.rb:69:in `block in tagged' .gem/ruby/2.5.0/gems/activesupport-5.1.5/lib/active_support/tagged_logging.rb:26:in `tagged' .gem/ruby/2.5.0/gems/activesupport-5.1.5/lib/active_support/tagged_logging.rb:69:in `tagged' .gem/ruby/2.5.0/gems/activejob-5.1.5/lib/active_job/logging.rb:44:in `tag_logger' .gem/ruby/2.5.0/gems/activejob-5.1.5/lib/active_job/logging.rb:14:in `block (2 levels) in <module:Logging>' .gem/ruby/2.5.0/gems/activesupport-5.1.5/lib/active_support/callbacks.rb:117:in `instance_exec' .gem/ruby/2.5.0/gems/activesupport-5.1.5/lib/active_support/callbacks.rb:117:in `block in run_callbacks' .gem/ruby/2.5.0/gems/activesupport-5.1.5/lib/active_support/callbacks.rb:135:in `run_callbacks' .gem/ruby/2.5.0/gems/activejob-5.1.5/lib/active_job/enqueuing.rb:47:in `enqueue' .gem/ruby/2.5.0/gems/activejob-5.1.5/lib/active_job/enqueuing.rb:18:in `perform_later' For the majority of cases, a client pool size of 5 is sufficient. However, servers which utilize a high number of threads, with large job payloads, and which may experience some network latency issues can see `Timeout::Error` crashes. This may be further exacerbated by the ~2-20x performance decrease through `ActiveJob` (#3782). Rails addresses this general type of connection issue for the main database by suggesting that the DB pool size match the number of threads running. This change applies that logic to the default client pool size by leveraging the same environment setting; this way there's a connection available per thread. This may also have the side effect of a slight performance boost, as there is less of a chance that threads will be blocked waiting on connections. The trade-off is that there may be a memory profile increase to handle the additional Redis connections in the pool; note the pool only creates new connections as necessary to handle the requests. Resolves #3806 27 March 2018, 22:46:57 UTC
60a41d3 change 27 March 2018, 16:18:52 UTC
82bdae8 Add link to docs in footer 27 March 2018, 16:18:05 UTC
86ca02f Refactor, changes 22 March 2018, 16:13:21 UTC
7448351 fix: use default when returned 0 22 March 2018, 16:04:28 UTC
611f7cd Use default retry interval in sidekiq_retry_in 22 March 2018, 16:04:28 UTC
1aad7b5 fixes 19 March 2018, 04:59:45 UTC
967f3f3 Add missing preamble for @krzysiek1507, #3759 15 March 2018, 16:00:53 UTC
aa46700 Allow use of AR middleware outside of Rails proper, fixes #3787 13 March 2018, 16:00:50 UTC
8a4926c Modern optimization 27 February 2018, 20:50:33 UTC
a0bcd59 changes, bump 26 February 2018, 18:05:59 UTC
6b3e453 Issue 3775 - Fixed Ctrl-C exception on Windows. 26 February 2018, 17:59:05 UTC
e18d9ac Fix pro version link 22 February 2018, 22:26:49 UTC
c2a7ee7 change 22 February 2018, 00:40:27 UTC
ee3194d 401 21 February 2018, 19:07:11 UTC
2ed9260 Missed a few 17 February 2018, 22:09:28 UTC
7de6f4c Remove explicit freeze, which should not be necessary anymore with frozen_string_literal: true. Fixes #3759 17 February 2018, 22:09:28 UTC
abca42d Revert "Use active record cache when available" This reverts commit a27d692656e15636cebe74542371a5e93f3f9194. The reason for reverting is that this middleware has no effect. In Rails 5.0+, Sidekiq runs its jobs using the Rails reloader/executor API[1]. In Rails 5.0+, however, the ActiveRecord query cache registers its own hooks with the executor[2], and these hooks automatically enable the query cache for the duration of any work the executor performs[3]. As a result, the query cache is already on by default for any Sidekiq jobs run in Rails 5.0+, so it's not necessary to separately enable it in a middleware. [1] https://github.com/mperham/sidekiq/blob/eca6acc0ce201125a45a5af75fd08c6ce985df5a/lib/sidekiq/rails.rb#L33-L37 [2] https://github.com/rails/rails/blob/f8c00c130016b248d1d409f131356632dcc418c6/activerecord/lib/active_record/railtie.rb#L159-L163 [3] https://github.com/rails/rails/blob/f8c00c130016b248d1d409f131356632dcc418c6/activerecord/lib/active_record/query_cache.rb#L26-L41 15 February 2018, 18:02:52 UTC
eca6acc comment 13 February 2018, 20:01:19 UTC
cc8fed0 changes 08 February 2018, 18:23:42 UTC
abfbc1e Revert "Make links out of all issue numbers in the changelog" This reverts commit 4f0efea6722f7c044a901e27ebfbd593fac7fa33. 08 February 2018, 18:21:20 UTC
10b0ff9 Merge branch 'master' of github.com:mperham/sidekiq 07 February 2018, 16:58:37 UTC
3f13f01 allow redis 3 07 February 2018, 16:58:31 UTC
da0bdd8 Clean up examples 06 February 2018, 20:27:14 UTC
b4d124d bump 06 February 2018, 17:31:23 UTC
ad80323 Force Redis 4.x now, fixes #3748 06 February 2018, 16:58:55 UTC
77966a9 prep 03 February 2018, 23:40:10 UTC
329ea91 Merge branch 'master' of github.com:mperham/sidekiq 03 February 2018, 20:33:58 UTC
5fedc9b polish 03 February 2018, 20:33:26 UTC
4f0efea Make links out of all issue numbers in the changelog If your changelog says "see issue for details", you should make it easy for someone to get there. 03 February 2018, 00:12:52 UTC
b1523b9 3743 01 February 2018, 17:36:25 UTC
336532c Prepare for Pro 4 31 January 2018, 22:43:10 UTC
cdf6430 rename API to death handlers for consistency 31 January 2018, 18:22:22 UTC
87fc928 latest 31 January 2018, 17:39:51 UTC
b48ae5e Allow dynamic signal handlers 29 January 2018, 20:20:08 UTC
2df8e52 changes 26 January 2018, 20:23:11 UTC
e2244b1 Merge branch 'master' of github.com:mperham/sidekiq 26 January 2018, 20:18:01 UTC
5fc5966 Update default scheduler precision, fixes #3734 26 January 2018, 20:17:46 UTC
fbac0e5 Test against ruby 2.5 15 January 2018, 23:01:02 UTC
a2db45b Polish job failure notification 15 January 2018, 18:39:32 UTC
32d03ec Add global failure handlers, fixes #3721 12 January 2018, 22:13:45 UTC
dca9c56 bump 12 January 2018, 18:41:33 UTC
a27d692 Use active record cache when available This will prevent duplicated queries on database at the same job. 12 January 2018, 17:00:36 UTC
7cf7995 Fix japanese locale of web 12 January 2018, 15:40:22 UTC
54ffad5 changes 11 January 2018, 17:40:29 UTC
1e48865 Remove unused code 11 January 2018, 17:38:05 UTC
b9d4eae Exceptions raised during the startup event should kill the process, fixes #3717 11 January 2018, 17:37:55 UTC
89fcf0c Avoid r-n deprecation message, fixes #3716 11 January 2018, 15:12:29 UTC
e2a6227 ent changes 10 January 2018, 18:48:49 UTC
34e39aa changes 10 January 2018, 18:04:14 UTC
e72d51b Use of logger outside of Sidekiq server process, fixes #3714 10 January 2018, 18:04:09 UTC
b56afee Finally fix negative pending!?!?!? 10 January 2018, 17:55:11 UTC
ee89592 Make Sidekiq::Client.via reentrant, fixes #3715 Seems like an easy fix? 10 January 2018, 17:53:57 UTC
a9c9392 changes 20 December 2017, 23:08:10 UTC
ed9af50 constantize 20 December 2017, 18:47:48 UTC
071a235 load constants from within nested namespace rather than prioriting root namespace 20 December 2017, 14:47:53 UTC
back to top