From ee0efab02f06c8938552e25c951a0bb65f2d2b52 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 7 May 2014 12:35:26 +1000 Subject: [PATCH] More logging, less problems --- app/models/search_observer.rb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/models/search_observer.rb b/app/models/search_observer.rb index abc7d03f696..bfbcca13723 100644 --- a/app/models/search_observer.rb +++ b/app/models/search_observer.rb @@ -41,8 +41,12 @@ class SearchObserver < ActiveRecord::Observer def after_save(obj) if obj.class == Post && obj.cooked_changed? - category_name = obj.topic.category.name if obj.topic.category - SearchObserver.update_posts_index(obj.id, obj.cooked, obj.topic.title, category_name) + if obj.topic + category_name = obj.topic.category.name if obj.topic.category + SearchObserver.update_posts_index(obj.id, obj.cooked, obj.topic.title, category_name) + else + Rails.logger.warn("Orphan post skipped in search_observer, topic_id: #{obj.topic_id} post_id: #{obj.id} raw: #{obj.raw}") + end end if obj.class == User && (obj.username_changed? || obj.name_changed?) SearchObserver.update_users_index(obj.id, obj.username, obj.name)