aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2018-05-13 11:03:37 +0900
committerGitHub <noreply@github.com>2018-05-13 11:03:37 +0900
commit8cfa34626c56b1e52328194e380d661785a7b082 (patch)
tree81a4bf283699f0f554087d0dace530a9052bfdbc /activerecord/lib/active_record
parent6fac9bd599eeb6b9cacdf7841811223402c501bd (diff)
parent2f29380c18d7754cefffbc09bebaa2007fb99929 (diff)
downloadrails-8cfa34626c56b1e52328194e380d661785a7b082.tar.gz
rails-8cfa34626c56b1e52328194e380d661785a7b082.tar.bz2
rails-8cfa34626c56b1e52328194e380d661785a7b082.zip
Merge pull request #32862 from eugeneius/callback_rollback
Don't clear transaction state after manual rollback
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r--activerecord/lib/active_record/transactions.rb8
1 files changed, 1 insertions, 7 deletions
diff --git a/activerecord/lib/active_record/transactions.rb b/activerecord/lib/active_record/transactions.rb
index be4f41050e..6e9dff5796 100644
--- a/activerecord/lib/active_record/transactions.rb
+++ b/activerecord/lib/active_record/transactions.rb
@@ -382,13 +382,7 @@ module ActiveRecord
status = nil
self.class.transaction do
add_to_transaction
- begin
- status = yield
- rescue ActiveRecord::Rollback
- clear_transaction_record_state
- status = nil
- end
-
+ status = yield
raise ActiveRecord::Rollback unless status
end
status