summaryrefslogtreecommitdiff
path: root/lib/gitlab/checks
diff options
context:
space:
mode:
authorTiago Botelho <tiagonbotelho@hotmail.com>2018-10-25 10:36:40 +0100
committerTiago Botelho <tiagonbotelho@hotmail.com>2018-10-25 10:52:03 +0100
commite0225aea1beb741601b888d4f505abd97f0f67a6 (patch)
tree818562012bb78cdbd73413b01558adef1bdfcc09 /lib/gitlab/checks
parentcb5f4d0cad520629aecaa838ddf1e84d7265ff49 (diff)
downloadgitlab-ce-e0225aea1beb741601b888d4f505abd97f0f67a6.tar.gz
Iterating through commit list times out
Validating each commit on ChangeAccess times out if it already took too long to complete. Improves the TimedLogger specs to not make use of a stubbed class anymore
Diffstat (limited to 'lib/gitlab/checks')
-rw-r--r--lib/gitlab/checks/change_access.rb2
-rw-r--r--lib/gitlab/checks/timed_logger.rb6
2 files changed, 6 insertions, 2 deletions
diff --git a/lib/gitlab/checks/change_access.rb b/lib/gitlab/checks/change_access.rb
index 7036ae9191d..28ec6beb7e0 100644
--- a/lib/gitlab/checks/change_access.rb
+++ b/lib/gitlab/checks/change_access.rb
@@ -159,6 +159,8 @@ module Gitlab
# n+1: https://gitlab.com/gitlab-org/gitlab-ee/issues/3593
::Gitlab::GitalyClient.allow_n_plus_1_calls do
commits.each do |commit|
+ logger.check_timeout_reached
+
commit_check.validate(commit, validations_for_commit(commit))
end
end
diff --git a/lib/gitlab/checks/timed_logger.rb b/lib/gitlab/checks/timed_logger.rb
index 11c08429d3d..f365e0a43f6 100644
--- a/lib/gitlab/checks/timed_logger.rb
+++ b/lib/gitlab/checks/timed_logger.rb
@@ -7,7 +7,7 @@ module Gitlab
attr_reader :start_time, :header, :log, :timeout
- def initialize(start_time: Time.now, log: [], timeout:, header: "")
+ def initialize(start_time: Time.now, log: [], header: "", timeout:)
@start_time = start_time
@timeout = timeout
@header = header
@@ -15,7 +15,9 @@ module Gitlab
end
# Adds trace of method being tracked with
- # the correspondent time it took to run it
+ # the correspondent time it took to run it.
+ # We make use of the start default argument
+ # on unit tests related to this method
#
def log_timed(log_message, start = Time.now)
check_timeout_reached