class ActiveSupport::Cache::Store

def handle_expired_entry(entry, key, options)

def handle_expired_entry(entry, key, options)
  if entry && entry.expired?
    race_ttl = options[:race_condition_ttl].to_i
    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.to_f + race_ttl
      write_entry(key, entry, expires_in: race_ttl * 2)
    else
      delete_entry(key, **options)
    end
    entry = nil
  end
  entry
end