From 750b38bbf473bedd22eb0f7726cab8eb0b2ff359 Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Mon, 18 Mar 2024 17:06:24 +0100 Subject: [PATCH] fix(champs): use approximate count in the task --- app/tasks/maintenance/fill_champs_stable_id_task.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/tasks/maintenance/fill_champs_stable_id_task.rb b/app/tasks/maintenance/fill_champs_stable_id_task.rb index e332389be..41f01cb5a 100644 --- a/app/tasks/maintenance/fill_champs_stable_id_task.rb +++ b/app/tasks/maintenance/fill_champs_stable_id_task.rb @@ -3,11 +3,16 @@ module Maintenance class FillChampsStableIdTask < MaintenanceTasks::Task def collection - Champ.includes(:type_de_champ) + Champ.where(stable_id: nil).includes(:type_de_champ) end def process(champ) champ.update_columns(stable_id: champ.stable_id, stream: 'main') end + + def count + sql = "SELECT reltuples FROM pg_class WHERE relname = 'champs';" + Champ.connection.select_value(sql).to_i + end end end