Commit graph

22 commits

Author SHA1 Message Date
Stan Hu
b33661d6ec Add ExclusiveLease guards for RepositoryCheck::{DispatchWorker,BatchWorker}
We saw in production that DispatchWorker was running about twice an hour,
which would schedule twice as many jobs as it should.

For some reason, BatchWorker was running 1000 times per hour, possibly
due to Sidekiq RSS kills that caused these jobs to restart.

Adding an ExclusiveLease prevents these jobs from running more
than they should.

Relates to https://gitlab.com/gitlab-com/infrastructure/issues/4526
2018-07-06 10:11:59 -07:00
Toon Claes
95ac8b0e1d Add RepositoryCheck::DispatchWorker to start worker per shard
The RepositoryCheck::DispatchWorker will start a
RepositoryCheck::BatchWorker for each healthy shard.

Closes gitlab-org/gitlab-ce#48042
2018-06-27 21:43:23 +02:00
Jacob Vosmaer (GitLab)
a0808df0b6 Find and mark more Git disk access locations 2018-06-05 15:51:14 +00:00
Toon Claes
e076bd9b17 Fix rubocop violation 2018-05-07 15:00:32 +02:00
Toon Claes
0490802636 Use push events again to determine if repo needs checking 2018-05-07 14:24:07 +02:00
Toon Claes
ca29aa114b Project#repository_storage_path no longer exists 2018-05-07 09:42:09 +02:00
Toon Claes
f70d7e4ea0 Refactor RepositoryCheck::SingleRepositoryWorker
A repo does not need pushes before it will be repo-checked. There are
other sources where commits can come from (e.g. import or webIDE).

In the test I made the method of breaking a repo more robust. And
added a few test examples.

See also gitlab-org/gitlab-ce#45046.
2018-05-07 09:42:09 +02:00
Toon Claes
b07c4e3dc4 Remove Rails.env.test? from production code 2018-05-07 09:42:09 +02:00
Jacob Vosmaer (GitLab)
5dd26d4e5a Hide Gollum inside Gitlab::Git::Wiki 2017-10-03 16:58:33 +00:00
Robert Speicher
72a7b30c9f Change all :empty_project to :project 2017-08-02 17:47:31 -04:00
Rémy Coutable
3db37e0562 Enable the Style/TrailingCommaInArguments cop
Use the EnforcedStyleForMultiline: no_comma option.

Signed-off-by: Rémy Coutable <remy@rymai.me>
2017-05-10 18:25:45 +02:00
Robert Speicher
68e6718932 Use :empty_project where possible in worker specs 2017-03-27 18:45:37 -04:00
Semyon Pupkov
3deb66ea56 Add traits for ProjectFeatures to Project factory
https://gitlab.com/gitlab-org/gitlab-ce/issues/24007
2017-02-05 13:11:45 +05:00
Felipe Artur
892dea6771 Project tools visibility level 2016-09-01 11:47:59 -03:00
Jacob Vosmaer
d9f6d5dd59 Do not check repos without push events 2016-06-15 19:11:25 +02:00
Douwe Maan
466f6874af Merge branch 'create-wikis-during-check' into 'master'
Initialize wikis on legacy projects during check

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/4173

Helps https://gitlab.com/gitlab-org/gitlab-ce/issues/15423

See merge request !3931
2016-05-04 14:10:49 +00:00
Jacob Vosmaer
9f85b7bc58 Initialize wikis on legacy projects during check 2016-04-26 16:56:14 +02:00
Jacob Vosmaer
3c0ab15a74 Do not fsck projects less than a day old
This should bring the number of false positives down.
2016-04-26 13:35:52 +02:00
Jacob Vosmaer
1394ccfe83 Destroy wikis uniformly 2016-04-18 11:03:53 +02:00
Jacob Vosmaer
d7a4a2fe75 When a project wiki is disabled skip it for fsck 2016-04-18 10:52:01 +02:00
Jacob Vosmaer
6f6d2d0ad5 Use more conservative limits 2016-04-13 17:33:25 +02:00
Jacob Vosmaer
0f602be99f Clear repository check columns asynchronously 2016-04-13 15:56:05 +02:00