gitlab-org--gitlab-foss/spec
Bob Van Landuyt f1ae1e39ce Move the circuitbreaker check out in a separate process
Moving the check out of the general requests, makes sure we don't have
any slowdown in the regular requests.

To keep the process performing this checks small, the check is still
performed inside a unicorn. But that is called from a process running
on the same server.

Because the checks are now done outside normal request, we can have a
simpler failure strategy:

The check is now performed in the background every
`circuitbreaker_check_interval`. Failures are logged in redis. The
failures are reset when the check succeeds. Per check we will try
`circuitbreaker_access_retries` times within
`circuitbreaker_storage_timeout` seconds.

When the number of failures exceeds
`circuitbreaker_failure_count_threshold`, we will block access to the
storage.

After `failure_reset_time` of no checks, we will clear the stored
failures. This could happen when the process that performs the checks
is not running.
2017-12-08 09:11:39 +01:00
..
bin Move the circuitbreaker check out in a separate process 2017-12-08 09:11:39 +01:00
config
controllers Move the circuitbreaker check out in a separate process 2017-12-08 09:11:39 +01:00
db/production
factories adding view and feature specs 2017-12-07 09:06:59 -05:00
features Move the circuitbreaker check out in a separate process 2017-12-08 09:11:39 +01:00
finders Merge branch 'master' into list-multiple-clusters 2017-12-04 09:50:25 +00:00
fixtures Create merge request from email 2017-12-05 08:41:58 +01:00
helpers Merge branch '40761-remove-the-checkbox-for-starting-a-new-pipeline-in-auto-devops-settings' into 'master' 2017-12-07 17:11:07 +00:00
initializers
javascripts Merge branch '40825-use-relative-path-urls' into 'master' 2017-12-07 23:30:17 +00:00
lib Move the circuitbreaker check out in a separate process 2017-12-08 09:11:39 +01:00
mailers Stop calling #strip in a commit title in Notify specs 2017-12-01 18:41:04 +01:00
migrations Merge branch 'mk-add-old-attachments-to-uploads-table' into 'master' 2017-12-07 02:34:58 +00:00
models Move the circuitbreaker check out in a separate process 2017-12-08 09:11:39 +01:00
policies Support uploads for groups 2017-12-07 12:27:52 +01:00
presenters Merge branch 'list-multiple-clusters' into 'master' 2017-12-06 09:07:52 +00:00
requests Move the circuitbreaker check out in a separate process 2017-12-08 09:11:39 +01:00
routing
rubocop/cop
serializers Use actual head pipeline on merge request serializer 2017-12-05 12:54:10 -02:00
services Merge branch 'feature/sm/34834-missing-dependency-should-fail-job-2' into 'master' 2017-12-07 19:59:01 +00:00
sidekiq/cron
support Move the circuitbreaker check out in a separate process 2017-12-08 09:11:39 +01:00
tasks Remove Rugged::Repository#empty? 2017-12-07 15:33:30 +00:00
unicorn
uploaders Support uploads for groups 2017-12-07 12:27:52 +01:00
validators
views adding view and feature specs 2017-12-07 09:06:59 -05:00
workers Ensure pippeline corresponds with the sha of an MR 2017-12-05 12:54:10 -02:00
factories_spec.rb
rails_helper.rb
rake_helper.rb
simplecov_env.rb
spec_helper.rb Move the circuitbreaker check out in a separate process 2017-12-08 09:11:39 +01:00