diff options
author | Yorick Peterse <yorickpeterse@gmail.com> | 2017-06-19 16:12:05 +0200 |
---|---|---|
committer | Yorick Peterse <yorickpeterse@gmail.com> | 2017-06-19 16:14:07 +0200 |
commit | d505a2b8e67998b8e6f9ab525e2ddd6c9298f51e (patch) | |
tree | 4477631595d9136feb2771a073245ff069c98bf3 | |
parent | b18c12ec6a9564d55bd2851a82ff2513b8485fe0 (diff) | |
download | gitlab-ce-d505a2b8e67998b8e6f9ab525e2ddd6c9298f51e.tar.gz |
Reduce wait timings for Sidekiq jobsreduce-sidekiq-wait-timings
This reduces the time spent waiting for Sidekiq jobs to complete in
JobWaiter, and reduces the sleep interval when trying to acquire the
lease for refreshing authorizations. These changes should reduce the
time spent just waiting for a lock, which we seem to be spending most
time in when running the AuthorizedProjectsWorker.
-rw-r--r-- | app/services/users/refresh_authorized_projects_service.rb | 2 | ||||
-rw-r--r-- | changelogs/unreleased/reduce-sidekiq-wait-timings.yml | 4 | ||||
-rw-r--r-- | lib/gitlab/job_waiter.rb | 2 |
3 files changed, 6 insertions, 2 deletions
diff --git a/app/services/users/refresh_authorized_projects_service.rb b/app/services/users/refresh_authorized_projects_service.rb index 3e07b811027..f028f5eb0d4 100644 --- a/app/services/users/refresh_authorized_projects_service.rb +++ b/app/services/users/refresh_authorized_projects_service.rb @@ -34,7 +34,7 @@ module Users # Keep trying until we obtain the lease. If we don't do so we may end up # not updating the list of authorized projects properly. To prevent # hammering Redis too much we'll wait for a bit between retries. - sleep(1) + sleep(0.1) end begin diff --git a/changelogs/unreleased/reduce-sidekiq-wait-timings.yml b/changelogs/unreleased/reduce-sidekiq-wait-timings.yml new file mode 100644 index 00000000000..4d23accc82e --- /dev/null +++ b/changelogs/unreleased/reduce-sidekiq-wait-timings.yml @@ -0,0 +1,4 @@ +--- +title: Reduce time spent waiting for certain Sidekiq jobs to complete +merge_request: +author: diff --git a/lib/gitlab/job_waiter.rb b/lib/gitlab/job_waiter.rb index 8db91d25a4b..208f0e1bbea 100644 --- a/lib/gitlab/job_waiter.rb +++ b/lib/gitlab/job_waiter.rb @@ -14,7 +14,7 @@ module Gitlab # timeout - The maximum amount of seconds to block the caller for. This # ensures we don't indefinitely block a caller in case a job takes # long to process, or is never processed. - def wait(timeout = 60) + def wait(timeout = 10) start = Time.current while (Time.current - start) <= timeout |