From 2b9b29c8c8cdb001f0eb31ebf2371b22284da490 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Hanol?= Date: Wed, 2 Sep 2015 22:02:31 +0200 Subject: [PATCH] FIX: ensure CategoryUser consistency --- app/jobs/scheduled/ensure_db_consistency.rb | 1 + app/models/category_user.rb | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/app/jobs/scheduled/ensure_db_consistency.rb b/app/jobs/scheduled/ensure_db_consistency.rb index 274c666deaa..c565023e5b5 100644 --- a/app/jobs/scheduled/ensure_db_consistency.rb +++ b/app/jobs/scheduled/ensure_db_consistency.rb @@ -13,6 +13,7 @@ module Jobs UserStat.update_view_counts(13.hours.ago) Topic.ensure_consistency! Badge.ensure_consistency! + CategoryUser.ensure_consistency! end end end diff --git a/app/models/category_user.rb b/app/models/category_user.rb index 1fb537f546e..cd7b719afda 100644 --- a/app/models/category_user.rb +++ b/app/models/category_user.rb @@ -92,6 +92,10 @@ class CategoryUser < ActiveRecord::Base ) end + def self.ensure_consistency! + exec_sql("DELETE FROM category_users WHERE user_id NOT IN (SELECT id FROM users)") + end + private_class_method :apply_default_to_topic, :remove_default_from_topic end