Resolve "Geo: Optimize replication of project repo keep around refs"
What does this MR do and why?
This MR avoids triggering Repositories::KeepAroundRefsCreatedEvent
event on keep_around
method when no SHAs are passed. If there are no SHAs then there is no write_ref
call: https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/git/keep_around.rb#L21-32
How to set up and validate locally
- In the secondary site, tail
geo.log
- Comment on an issue.
- Observe logs, there shouldn't be any log like the following one:
{"severity":"INFO","time":"2022-05-19T00:50:32.648Z","correlation_id":null,"pid":50126,"host":"127.0.0.1","class":"Gitlab::Geo::LogCursor::Daemon","message":"Repository update","project_id":6,"source":"repository","resync_repository":true,"resync_wiki":false,"scheduled_at":"2022-05-18T17:50:32.629-07:00","replicable_project":true,"job_id":"d7d2a28e31b6840ff61a69fe","event_id":2,"cursor_delay_s":0.51}
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #362851 (closed)
Edited by Javiera Tapia