c149d52 | Mike Perham | 06 November 2018, 17:00:26 UTC | bump, release | 06 November 2018, 17:00:26 UTC |
be74269 | Mike Perham | 06 November 2018, 16:56:56 UTC | Merge branch 'master' of github.com:mperham/sidekiq | 06 November 2018, 16:56:56 UTC |
df788c6 | Mike Perham | 06 November 2018, 16:56:50 UTC | Warning for upcoming breakage | 06 November 2018, 16:56:50 UTC |
1c44ab6 | Matt Duszynski | 29 October 2018, 19:04:19 UTC | sidekiqctl status (#4003) * Add status output for sidekiqctl * A little cleanup * Refactor to Sidekiqctl::Status * Error handling for section argument * Rename workers to processes * Clean up how the queue table is printed * Refactoring, added tests * Improve error handling * Comma-separate values in overview * Add changelog entry | 29 October 2018, 19:04:19 UTC |
a8329b7 | Karthik M A M | 29 October 2018, 16:58:56 UTC | Fix RealTime Graphs Reset on Window Height Change (#4008) * fix graphs reset on height change * move debounce method * add semi-colon | 29 October 2018, 16:58:56 UTC |
c1a9802 | Gerrit Riessen | 19 October 2018, 15:33:51 UTC | Update _nav.erb (#4002) Localize the "Back to App" string | 19 October 2018, 15:33:51 UTC |
8d06669 | Mike Perham | 19 October 2018, 02:28:47 UTC | ent changes, fixes #4000 | 19 October 2018, 02:28:47 UTC |
003e581 | Mike Perham | 18 October 2018, 21:35:10 UTC | Fix test suite | 18 October 2018, 21:35:10 UTC |
f0d6cec | Mike Perham | 18 October 2018, 20:53:30 UTC | ent changes | 18 October 2018, 20:53:30 UTC |
aa9745e | Mike Perham | 18 October 2018, 20:51:58 UTC | Switch elapsed time calcs to use monotonic clock, fixes #3999 | 18 October 2018, 20:51:58 UTC |
27de964 | Mike Perham | 18 October 2018, 15:29:10 UTC | changes | 18 October 2018, 15:29:10 UTC |
64dfc28 | Matt Books | 18 October 2018, 15:27:45 UTC | Synchronize code that reads/undefines methods in class attrs (#3997) Fixes #3659 and #2302 The problem is that when two classes are accessed from separate threads they can race to undef/read these methods. | 18 October 2018, 15:27:45 UTC |
b5cad42 | Mike Perham | 05 October 2018, 15:58:45 UTC | #3951 | 05 October 2018, 15:58:45 UTC |
b532249 | Mike Perham | 28 September 2018, 18:22:17 UTC | Minimize logging in the retry subsystem, fixes #3979 | 28 September 2018, 18:22:17 UTC |
f638246 | Mike Perham | 27 September 2018, 19:07:45 UTC | #3974 | 27 September 2018, 19:07:45 UTC |
361a8f7 | Mike Perham | 27 September 2018, 15:49:58 UTC | changes | 27 September 2018, 15:49:58 UTC |
4359161 | Benjamin Dobell | 27 September 2018, 15:39:13 UTC | Ensure death_handlers are called on jobs with retry: false (#3980) | 27 September 2018, 15:39:13 UTC |
24d12dd | Mike Perham | 20 September 2018, 20:08:15 UTC | changes, bump | 20 September 2018, 20:08:15 UTC |
debe8ec | Mike Perham | 20 September 2018, 20:06:46 UTC | move config to proper place | 20 September 2018, 20:06:46 UTC |
c342476 | Navied Shoushtarian | 20 September 2018, 20:06:18 UTC | Fixed mobile navigation. (#3973) * Fixed mobile navigation. * Remove unused toggle. * Small css changes for mobile + ipad * Fixes to double navbar * remove leftover css * fixed double btn two line issue | 20 September 2018, 20:06:18 UTC |
fd23e2f | Mike Perham | 17 September 2018, 19:07:15 UTC | Revert "changelog" This reverts commit d997b751c6df53cb5a1c9ee8497449602d53bf84. | 17 September 2018, 19:07:15 UTC |
d997b75 | Mike Perham | 17 September 2018, 19:06:51 UTC | changelog | 17 September 2018, 19:06:51 UTC |
4076577 | Mike Perham | 17 September 2018, 17:10:27 UTC | Update default concurrency per 5.2 changes | 17 September 2018, 17:10:27 UTC |
10342b6 | Mike Perham | 17 September 2018, 16:08:33 UTC | release | 17 September 2018, 16:08:33 UTC |
3553a5a | Mike Perham | 12 September 2018, 21:06:36 UTC | bump | 12 September 2018, 21:06:36 UTC |
927680c | Matt Books | 11 September 2018, 16:53:52 UTC | Use a mutex to synchronize access to shared WORKER_STATE hash (#3959) On jruby, the Hash implementation is not threadsafe, and leads to jobs not being deleted from the busy list. See #3958 | 11 September 2018, 16:53:52 UTC |
da3fbed | Tobias Bühlmann | 09 September 2018, 13:11:37 UTC | Use redis' default driver (#3956) Redis stores its loaded drivers in `Redis::Connection.drivers` and uses the last one of them when initializing a new client. Sidekiq always uses `'ruby'` (or `Redis::Connection::Ruby`) per default, though. With this commit we are following redis' default by passing the last loaded driver per default (or a given `:driver`). | 09 September 2018, 13:11:37 UTC |
78344b6 | Mike Perham | 06 September 2018, 15:51:42 UTC | Other languages should fall back to EN when there is no native translation, fixes #3950 | 06 September 2018, 15:51:42 UTC |
9fdbdba | Mike Perham | 03 September 2018, 15:13:19 UTC | pro 4.0.4 | 03 September 2018, 15:13:19 UTC |
1cd40bd | Mike Perham | 31 August 2018, 15:38:06 UTC | add tags | 31 August 2018, 15:38:06 UTC |
305ab8e | Morad Edwar | 25 August 2018, 14:42:01 UTC | Add Kill All button to the retries page (#3938) | 25 August 2018, 14:42:01 UTC |
e822718 | Chad Schroeder | 24 August 2018, 18:35:07 UTC | Raise error for duplicate queue names in config, fixes #3911 (#3936) * Raise error for duplicate queue names in config, fixes #3911 * Add note to change log | 24 August 2018, 18:35:07 UTC |
6386c65 | Alexandros | 19 August 2018, 20:21:11 UTC | absolute path for bundle in sidekiq.service for rbenv (#3931) | 19 August 2018, 20:21:11 UTC |
43e86db | Mike Perham | 17 August 2018, 19:04:49 UTC | Merge branch 'master' of github.com:mperham/sidekiq | 17 August 2018, 19:04:49 UTC |
e252999 | Mike Perham | 17 August 2018, 19:04:43 UTC | note | 17 August 2018, 19:04:43 UTC |
6e18326 | Laurent Arnoud | 13 August 2018, 22:13:51 UTC | Add queue size to web show page (#3896) * Add queue size to web show page * Use bootstrap badge for queue size on show Thanks-to: @thegorgon * Use @total_size to avoid a network trip | 13 August 2018, 22:13:51 UTC |
99922ca | Mike Perham | 10 August 2018, 12:57:56 UTC | dup hash to avoid concurrent modification, fixes #3921 | 10 August 2018, 12:57:56 UTC |
b075660 | Mike Perham | 09 August 2018, 20:46:54 UTC | release | 09 August 2018, 20:46:54 UTC |
b1bdaa7 | Mike Perham | 07 August 2018, 15:17:59 UTC | Verify connection pool sizing, fixes #3917 | 07 August 2018, 15:17:59 UTC |
03e63b8 | Óscar de Arriba | 06 August 2018, 17:46:00 UTC | 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 | Jesse Reiss | 05 August 2018, 19:31:37 UTC | Add CSP header to web admin to ensure it matches needs (#3913) | 05 August 2018, 19:31:37 UTC |
778b9cf | Mike Perham | 05 August 2018, 18:01:04 UTC | changes | 05 August 2018, 18:01:04 UTC |
35cdf82 | Mike Perham | 03 August 2018, 23:02:51 UTC | Merge branch 'master' of github.com:mperham/sidekiq | 03 August 2018, 23:02:51 UTC |
353c95d | Mike Perham | 03 August 2018, 23:02:41 UTC | Updated bootstrap with glyphicons removed, fixes #3914 | 03 August 2018, 23:02:41 UTC |
fa8a943 | Mike Perham | 03 August 2018, 23:00:17 UTC | Remove superfluous executable bit | 03 August 2018, 23:00:17 UTC |
2929413 | Mike Perham | 01 August 2018, 16:36:45 UTC | Merge branch 'master' of github.com:mperham/sidekiq | 01 August 2018, 16:36:45 UTC |
173ce98 | Mike Perham | 01 August 2018, 16:36:37 UTC | Convert queue name to string, fixes #3907 | 01 August 2018, 16:36:37 UTC |
24ac099 | Mike Perham | 31 July 2018, 17:47:50 UTC | Merge branch 'master' of github.com:mperham/sidekiq | 31 July 2018, 17:47:50 UTC |
3cadbce | Mike Perham | 31 July 2018, 17:47:43 UTC | changes | 31 July 2018, 17:47:43 UTC |
95f8fc1 | Anantha Kumaran | 27 July 2018, 06:45:43 UTC | 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 | Mike Perham | 20 July 2018, 17:54:41 UTC | Bumpski! | 20 July 2018, 17:54:41 UTC |
8ff96ae | Mike Perham | 20 July 2018, 17:54:31 UTC | 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 | Mike Perham | 20 July 2018, 17:48:26 UTC | changes | 20 July 2018, 17:48:46 UTC |
ea3beee | Mike Perham | 20 July 2018, 17:46:29 UTC | Remove the 2x, further comments | 20 July 2018, 17:48:46 UTC |
8a589d6 | Mike Perham | 18 July 2018, 17:02:38 UTC | 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 | Diego J | 09 July 2018, 15:34:14 UTC | 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 | Hayato | 06 July 2018, 05:35:58 UTC | 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 | Mike Perham | 21 June 2018, 18:18:59 UTC | changes | 21 June 2018, 18:18:59 UTC |
f867fd5 | Mike Perham | 21 June 2018, 18:16:07 UTC | Merge branch 'master' of github.com:mperham/sidekiq | 21 June 2018, 18:16:07 UTC |
9f12a77 | Mike Perham | 21 June 2018, 18:14:54 UTC | Upgrade to Rails 5.2 skeleton | 21 June 2018, 18:14:54 UTC |
2b20e4c | Friedhelm Filler | 30 May 2018, 20:20:28 UTC | refactoring | 31 May 2018, 17:47:27 UTC |
849547c | Friedhelm Filler | 25 May 2018, 22:46:42 UTC | move redis_iterator test to its own file | 31 May 2018, 17:47:27 UTC |
b46144c | Friedhelm Filler | 25 May 2018, 22:36:53 UTC | extend instead of include | 31 May 2018, 17:47:27 UTC |
6cffb63 | Friedhelm Filler | 25 May 2018, 22:31:22 UTC | move sscan to a module | 31 May 2018, 17:47:27 UTC |
64b941b | Friedhelm Filler | 24 May 2018, 21:48:30 UTC | remove smembers calls from the pipeline as they've been replaced by sscan calls | 31 May 2018, 17:47:27 UTC |
9699377 | Friedhelm Filler | 24 May 2018, 21:11:31 UTC | decrease redis latency by switching smembers queries to sscan; relates to #3848 | 31 May 2018, 17:47:27 UTC |
28dcf55 | Mike Perham | 30 May 2018, 16:57:37 UTC | polish, changes, bump | 30 May 2018, 16:57:37 UTC |
e942dfb | Dmitriy Ivliev | 29 May 2018, 18:02:30 UTC | change alias method to prepend in testing module | 30 May 2018, 16:41:46 UTC |
ed6d3cb | Mike Perham | 21 May 2018, 16:39:07 UTC | release 403 | 21 May 2018, 16:39:07 UTC |
69e314a | Mike Perham | 15 May 2018, 18:27:49 UTC | freshen push_bulk rdoc | 15 May 2018, 18:27:49 UTC |
e2e8bfc | Mike Perham | 10 May 2018, 17:54:14 UTC | batch death | 10 May 2018, 17:54:14 UTC |
f31ed4e | Terry Appleby | 07 May 2018, 02:01:55 UTC | Memoize namespace with instance variable. | 07 May 2018, 02:25:52 UTC |
6e79f2a | Mike Perham | 30 April 2018, 00:58:19 UTC | add memory tuning to examples | 30 April 2018, 00:58:19 UTC |
822a75d | Mike Perham | 26 April 2018, 21:00:50 UTC | Remove concurrent-ruby dependency, fixes #3830 | 26 April 2018, 21:02:03 UTC |
b58c505 | Mike Perham | 26 April 2018, 20:45:59 UTC | oops | 26 April 2018, 20:45:59 UTC |
c18c19a | Mike Perham | 26 April 2018, 20:40:45 UTC | Remove unnecessary dev deps from gemspec, move into gemfile. | 26 April 2018, 20:40:45 UTC |
b2c8bc6 | Mike Perham | 23 April 2018, 22:46:58 UTC | Implement our own atomic counter, #3830 | 23 April 2018, 22:46:58 UTC |
ad6bb6a | Mike Perham | 13 April 2018, 16:27:51 UTC | 3823 | 13 April 2018, 16:27:51 UTC |
873f1df | Mike Perham | 02 April 2018, 16:04:41 UTC | changes, release | 02 April 2018, 16:04:41 UTC |
bca9396 | Nate Berkopec | 29 March 2018, 20:06:23 UTC | Fix Ruby version comparison This line previously failed against 2.2.10. | 29 March 2018, 20:07:14 UTC |
6614abd | Mike Perham | 29 March 2018, 19:08:40 UTC | release | 29 March 2018, 19:08:40 UTC |
c262f76 | Mike Perham | 29 March 2018, 19:04:02 UTC | release | 29 March 2018, 19:04:02 UTC |
b23c0ec | Aaron Kromer | 27 March 2018, 20:53:59 UTC | 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 | Mike Perham | 27 March 2018, 16:18:52 UTC | change | 27 March 2018, 16:18:52 UTC |
82bdae8 | Mike Perham | 27 March 2018, 16:18:05 UTC | Add link to docs in footer | 27 March 2018, 16:18:05 UTC |
86ca02f | Mike Perham | 22 March 2018, 16:13:21 UTC | Refactor, changes | 22 March 2018, 16:13:21 UTC |
7448351 | Salahutdinov Dmitry | 21 March 2018, 14:31:03 UTC | fix: use default when returned 0 | 22 March 2018, 16:04:28 UTC |
611f7cd | Salahutdinov Dmitry | 21 March 2018, 08:01:58 UTC | Use default retry interval in sidekiq_retry_in | 22 March 2018, 16:04:28 UTC |
1aad7b5 | Mike Perham | 19 March 2018, 04:59:45 UTC | fixes | 19 March 2018, 04:59:45 UTC |
967f3f3 | Mike Perham | 15 March 2018, 16:00:53 UTC | Add missing preamble for @krzysiek1507, #3759 | 15 March 2018, 16:00:53 UTC |
aa46700 | Mike Perham | 13 March 2018, 16:00:50 UTC | Allow use of AR middleware outside of Rails proper, fixes #3787 | 13 March 2018, 16:00:50 UTC |
8a4926c | Mike Perham | 27 February 2018, 20:50:33 UTC | Modern optimization | 27 February 2018, 20:50:33 UTC |
a0bcd59 | Mike Perham | 26 February 2018, 18:05:59 UTC | changes, bump | 26 February 2018, 18:05:59 UTC |
6b3e453 | Bernica | 26 February 2018, 17:54:21 UTC | Issue 3775 - Fixed Ctrl-C exception on Windows. | 26 February 2018, 17:59:05 UTC |
e18d9ac | pawurb | 22 February 2018, 22:08:46 UTC | Fix pro version link | 22 February 2018, 22:26:49 UTC |
c2a7ee7 | Mike Perham | 22 February 2018, 00:40:27 UTC | change | 22 February 2018, 00:40:27 UTC |
ee3194d | Mike Perham | 21 February 2018, 19:07:11 UTC | 401 | 21 February 2018, 19:07:11 UTC |
2ed9260 | Mike Perham | 16 February 2018, 21:11:54 UTC | Missed a few | 17 February 2018, 22:09:28 UTC |
7de6f4c | Mike Perham | 16 February 2018, 21:01:25 UTC | Remove explicit freeze, which should not be necessary anymore with frozen_string_literal: true. Fixes #3759 | 17 February 2018, 22:09:28 UTC |
abca42d | Simon Coffey | 15 February 2018, 14:16:54 UTC | 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 |