GroupWikiRepositoryReplicator - Repository cannot be checksummed because it does not exist
Summary
Geo Group Wiki sync added in 16.3 fails if a Group is missing a wiki repository.
ZD 451059 (Internal) for detailed customer logs.
Steps to reproduce
Unknown, I'm unsure how the customers server ended up with a group that's missing this repository.
Example Project
n/a
What is the current bug behavior?
During a Geo sync the group wiki verification fails leaving a red bar on the Geo summary screen.
What is the expected correct behavior?
Unsure, does something like the auto create that was added to the Project Wiki needed adding here? !123869 (merged)
Relevant logs and/or screenshots
{
"severity": "ERROR",
"time": "2023-09-23T01:11:05.755Z",
"correlation_id": "77f8ab430974f4f4cb01da6ee3191315",
"class": "Geo::GroupWikiRepositoryReplicator",
"gitlab_host": "x.x.x.x",
"message": "Repository cannot be checksummed because it does not exist",
"error": "Repository does not exist",
"replicable_name": "group_wiki_repository",
"replicable_id": 3299
}
{
"severity": "ERROR",
"time": "2023-09-23T01:11:05.775Z",
"correlation_id": "77f8ab430974f4f4cb01da6ee3191315",
"class": "GroupWikiRepository",
"gitlab_host": "x.x.x.x",
"message": "Error during verification",
"error": "Repository does not exist"
}
Output of checks
Results of GitLab environment info
Expand for output related to GitLab environment info
(For installations with omnibus-gitlab package run and paste the output of: `sudo gitlab-rake gitlab:env:info`) (For installations from source run and paste the output of: `sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production`)
Results of GitLab application Check
Expand for output related to the GitLab application check
(For installations with omnibus-gitlab package run and paste the output of:
sudo gitlab-rake gitlab:check SANITIZE=true
)(For installations from source run and paste the output of:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production SANITIZE=true
)(we will only investigate if the tests are passing)
Workaround
Run the following in the Rails console on the primary site:
::GroupWikiRepository.verification_failed.each_batch do |wiki_repositories|
wiki_repositories.each { |wiki_repository| wiki_repository.group.create_wiki }
end