Fix race analytics: retry su unique violation in aggregazione heatmap.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-21 16:23:02 +02:00
co-authored by Cursor
parent 4573edfedc
commit 873e0ea55c
2 changed files with 41 additions and 16 deletions
+9 -1
View File
@@ -31,7 +31,15 @@ module Analytics
end
AnalyticsEvent.insert_all(rows) if rows.any?
Analytics::Aggregate.new.call if rows.any?
if rows.any?
begin
Analytics::Aggregate.new.call
rescue ActiveRecord::RecordNotUnique => e
# Dopo i retry interni: non far fallire la richiesta analytics.
Rails.logger.warn("[analytics] aggregate race after retries, enqueue job: #{e.message}")
Analytics::AggregateJob.perform_later
end
end
Result.new(accepted: accepted, rejected: rejected + (@events.size - slice.size), rate_limited: false)
end