diff options
author | Robert Speicher <robert@gitlab.com> | 2016-03-18 20:26:40 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2016-03-21 12:37:20 +0100 |
commit | c7f3bee7ff53030355eac6fd28c57c3ab8ff53b3 (patch) | |
tree | 2ca6e023fc7884b82e35e656325ea4edbf8cb7f7 /app | |
parent | d22c1069d3a091e0c630aed84f25cef71907ecb5 (diff) | |
download | gitlab-ce-c7f3bee7ff53030355eac6fd28c57c3ab8ff53b3.tar.gz |
Merge branch 'no-gc-retry' into 'master'
Do not retry "git gc"
To prevent 'git gc' timing out on a large repo and then bouncing
around in the retry queue.
See merge request !3266
Diffstat (limited to 'app')
-rw-r--r-- | app/services/projects/housekeeping_service.rb | 2 | ||||
-rw-r--r-- | app/workers/gitlab_shell_one_shot_worker.rb | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/app/services/projects/housekeeping_service.rb b/app/services/projects/housekeeping_service.rb index bccd67d3dbf..a0973c5d260 100644 --- a/app/services/projects/housekeeping_service.rb +++ b/app/services/projects/housekeeping_service.rb @@ -24,7 +24,7 @@ module Projects def execute raise LeaseTaken if !try_obtain_lease - GitlabShellWorker.perform_async(:gc, @project.path_with_namespace) + GitlabShellOneShotWorker.perform_async(:gc, @project.path_with_namespace) ensure @project.update_column(:pushes_since_gc, 0) end diff --git a/app/workers/gitlab_shell_one_shot_worker.rb b/app/workers/gitlab_shell_one_shot_worker.rb new file mode 100644 index 00000000000..4ddbcf574d5 --- /dev/null +++ b/app/workers/gitlab_shell_one_shot_worker.rb @@ -0,0 +1,10 @@ +class GitlabShellOneShotWorker + include Sidekiq::Worker + include Gitlab::ShellAdapter + + sidekiq_options queue: :gitlab_shell, retry: false + + def perform(action, *arg) + gitlab_shell.send(action, *arg) + end +end |