aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2015-03-17 17:30:15 -0300
committerRafael Mendonça França <rafaelmfranca@gmail.com>2015-03-17 17:30:15 -0300
commita42c9528d8556425681952f42269699bcbe0422f (patch)
treec5b5c3db667d7992846a060526578491805a93a6 /activesupport/lib
parentec850899d5a5de07ad48806cd5862b913c279929 (diff)
parent23767c0c41fa51ebef1dfb11bc166c07e93897ac (diff)
downloadrails-a42c9528d8556425681952f42269699bcbe0422f.tar.gz
rails-a42c9528d8556425681952f42269699bcbe0422f.tar.bz2
rails-a42c9528d8556425681952f42269699bcbe0422f.zip
Merge pull request #19296 from Wildebeest/fix-race-ttl
Skip the `:race_condition_ttl` branch if the option is 0 or nil.
Diffstat (limited to 'activesupport/lib')
-rw-r--r--activesupport/lib/active_support/cache.rb4
1 files changed, 2 insertions, 2 deletions
diff --git a/activesupport/lib/active_support/cache.rb b/activesupport/lib/active_support/cache.rb
index 625be2c959..837974bc85 100644
--- a/activesupport/lib/active_support/cache.rb
+++ b/activesupport/lib/active_support/cache.rb
@@ -566,8 +566,8 @@ module ActiveSupport
def handle_expired_entry(entry, key, options)
if entry && entry.expired?
race_ttl = options[:race_condition_ttl].to_i
- if race_ttl && (Time.now.to_f - entry.expires_at <= race_ttl)
- # When an entry has :race_condition_ttl defined, put the stale entry back into the cache
+ if (race_ttl > 0) && (Time.now.to_f - entry.expires_at <= race_ttl)
+ # When an entry has a positive :race_condition_ttl defined, put the stale entry back into the cache
# for a brief period while the entry is being recalculated.
entry.expires_at = Time.now + race_ttl
write_entry(key, entry, :expires_in => race_ttl * 2)