aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
diff options
context:
space:
mode:
authorArthur Neves <arthurnn@gmail.com>2014-05-15 15:38:05 -0400
committerArthur Neves <arthurnn@gmail.com>2014-05-15 16:29:16 -0400
commit535f299df9b8228c854d3ed0554feeaf1946812f (patch)
tree841dc7d722496be86e07a8fff0a3163fe45bcfcf /activerecord/lib
parente3d223bcce28c3ac70b84399f9b211ae11542233 (diff)
downloadrails-535f299df9b8228c854d3ed0554feeaf1946812f.tar.gz
rails-535f299df9b8228c854d3ed0554feeaf1946812f.tar.bz2
rails-535f299df9b8228c854d3ed0554feeaf1946812f.zip
Clear transaction state if callback raise rollback
Diffstat (limited to 'activerecord/lib')
-rw-r--r--activerecord/lib/active_record/transactions.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/transactions.rb b/activerecord/lib/active_record/transactions.rb
index c0d8b8ddd4..51bda88be9 100644
--- a/activerecord/lib/active_record/transactions.rb
+++ b/activerecord/lib/active_record/transactions.rb
@@ -328,7 +328,7 @@ module ActiveRecord
begin
status = yield
rescue ActiveRecord::Rollback
- @_start_transaction_state[:level] = (@_start_transaction_state[:level] || 0) - 1
+ clear_transaction_record_state
status = nil
end