aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
diff options
context:
space:
mode:
authorJon Leighton <j@jonathanleighton.com>2012-09-14 23:59:35 +0100
committerJon Leighton <j@jonathanleighton.com>2012-09-15 00:03:04 +0100
commit02f56554d68cddae02ccc4a8511cc5c64210d258 (patch)
tree4b091ddba84e3948128e9071ba3f4044eb79cdea /activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
parent61951427903dbc0d92f6106ec5874025e2185056 (diff)
downloadrails-02f56554d68cddae02ccc4a8511cc5c64210d258.tar.gz
rails-02f56554d68cddae02ccc4a8511cc5c64210d258.tar.bz2
rails-02f56554d68cddae02ccc4a8511cc5c64210d258.zip
Ensure disconnecting or reconnecting resets the transaction state
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/mysql_adapter.rb')
-rw-r--r--activerecord/lib/active_record/connection_adapters/mysql_adapter.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
index bb63fddf9b..0b936bbf39 100644
--- a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
@@ -189,14 +189,15 @@ module ActiveRecord
end
def reconnect!
+ super
disconnect!
- clear_cache!
connect
end
# Disconnects from the database if already connected. Otherwise, this
# method does nothing.
def disconnect!
+ super
@connection.close rescue nil
end