From ba75b4a0de38e4403fe2ec38289a3f0f518ceec1 Mon Sep 17 00:00:00 2001 From: Martin Edenhofer Date: Thu, 6 Nov 2014 21:44:13 +0100 Subject: [PATCH] Improved error handling on many concurrent cache file writes/deletes. Do not raise exemption if write was not successfully. --- lib/cache.rb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/cache.rb b/lib/cache.rb index 47cc952f8..c7e3a37d9 100644 --- a/lib/cache.rb +++ b/lib/cache.rb @@ -8,7 +8,11 @@ module Cache params[:expires_in] = 24.hours end # puts 'Cache.write: ' + key.to_s - Rails.cache.write( key.to_s, data, params) + begin + Rails.cache.write( key.to_s, data, params) + rescue Exception => e + puts "NOTICE: #{e.message}" + end end def self.get( key ) # puts 'Cache.get: ' + key.to_s @@ -17,7 +21,7 @@ module Cache def self.clear # puts 'Cache.clear...' # workaround, set test cache before clear whole cache, Rails.cache.clear complains about not existing cache dir - Cache.write('test',1 ) + Cache.write( 'test', 1 ) Rails.cache.clear end