From 23b8a408f717efa8a86564041a5d28ba83bc0944 Mon Sep 17 00:00:00 2001 From: Sam Date: Fri, 14 Aug 2015 13:05:13 +1000 Subject: [PATCH] FIX: serialize post processing This avoids all sorts of nasty race conditions in job schedular --- lib/cooked_post_processor.rb | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/cooked_post_processor.rb b/lib/cooked_post_processor.rb index fb67c991e0..5989891dd1 100644 --- a/lib/cooked_post_processor.rb +++ b/lib/cooked_post_processor.rb @@ -16,11 +16,13 @@ class CookedPostProcessor end def post_process(bypass_bump = false) - keep_reverse_index_up_to_date - post_process_images - post_process_oneboxes - optimize_urls - pull_hotlinked_images(bypass_bump) + DistributedMutex.synchronize("post_process_#{@post.id}") do + keep_reverse_index_up_to_date + post_process_images + post_process_oneboxes + optimize_urls + pull_hotlinked_images(bypass_bump) + end end def keep_reverse_index_up_to_date