Skip to content
Snippets Groups Projects

Add lease to update project statistics row and log concurrent updates

Merged Albert requested to merge 373595-lock-on-project-statistics-update into master
Compare and Show latest version
3 files
+ 71
21
Compare changes
  • Side-by-side
  • Inline
Files
3
@@ -81,7 +81,15 @@ def self.process_next_refresh!
def reset_project_statistics!
statistics = project.statistics
statistics.with_lock('FOR UPDATE') do
log = proc do
Gitlab::AppLogger.warn(
message: 'Unable to obtain lock to reset project statistics',
project_statistics_id: statistics.id,
method: __method__
)
end
statistics.try_obtain_lock(on_retry: log) do
statistics.update!(build_artifacts_size: 0)
statistics.clear_counter!(:build_artifacts_size)
end
Loading