diff options
author | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2015-05-27 23:45:04 -0300 |
---|---|---|
committer | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2015-05-27 23:45:55 -0300 |
commit | 1ed92a2ee192631b8beac8f51a3af209c8d1bc8a (patch) | |
tree | b390e2402f5421797104ad9539b9b6bbd0c85010 /activerecord/lib | |
parent | c68e45dd3bb859da76558c197e70d5c4882d85ee (diff) | |
parent | 95bdb95ad5e311a215535056851682840f96c1b7 (diff) | |
download | rails-1ed92a2ee192631b8beac8f51a3af209c8d1bc8a.tar.gz rails-1ed92a2ee192631b8beac8f51a3af209c8d1bc8a.tar.bz2 rails-1ed92a2ee192631b8beac8f51a3af209c8d1bc8a.zip |
Merge pull request #19886 from henders/henders/reload_wipe_query_cache
Cause ActiveRecord::Base::reload to also ignore the QueryCache.
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/persistence.rb | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/persistence.rb b/activerecord/lib/active_record/persistence.rb index 466175690e..437ba31711 100644 --- a/activerecord/lib/active_record/persistence.rb +++ b/activerecord/lib/active_record/persistence.rb @@ -382,7 +382,7 @@ module ActiveRecord # # => #<Account id: 1, email: 'account@example.com'> # # Attributes are reloaded from the database, and caches busted, in - # particular the associations cache. + # particular the associations cache and the QueryCache. # # If the record no longer exists in the database <tt>ActiveRecord::RecordNotFound</tt> # is raised. Otherwise, in addition to the in-place modification the method @@ -418,6 +418,8 @@ module ActiveRecord # end # def reload(options = nil) + self.class.connection.clear_query_cache + fresh_object = if options && options[:lock] self.class.unscoped { self.class.lock(options[:lock]).find(id) } |