From c2729428454da4efdd9cf240b3e73b8f9f510b07 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 3 Nov 2025 18:09:17 +0000 Subject: [PATCH 1/2] Initial plan From 2553668deabc6f87fde928ce8fbb0b9af8c6c88c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 3 Nov 2025 18:13:37 +0000 Subject: [PATCH 2/2] Add retry limit to prevent infinite loops in SerializationFailure rescue Co-authored-by: kevin-pattern <180708603+kevin-pattern@users.noreply.github.com> --- lib/query_helper.rb | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/query_helper.rb b/lib/query_helper.rb index adcd3ca..4171734 100644 --- a/lib/query_helper.rb +++ b/lib/query_helper.rb @@ -169,6 +169,7 @@ def view_query end def execute_query + retry_count ||= 0 begin query = build_query() @results = @model.find_by_sql([query, @bind_variables]) # Execute Sql Query @@ -179,8 +180,14 @@ def execute_query load_associations() clean_results() rescue ActiveRecord::SerializationFailure => e - Rails.logger.warn("Retrying after serialization failure: #{e.message}") - retry + retry_count += 1 + if retry_count < 3 + Rails.logger.warn("Retrying after serialization failure (attempt #{retry_count}/3): #{e.message}") + retry + else + Rails.logger.error("Max retries reached after serialization failure: #{e.message}") + raise + end end end