diff options
author | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2015-01-04 11:23:57 -0300 |
---|---|---|
committer | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2015-01-04 11:58:44 -0300 |
commit | 07d3d402341e81ada0214f2cb2be1da69eadfe72 (patch) | |
tree | 8f75557a4144e685daa1befe8797511e2d80eb5d /activerecord/lib/active_record/connection_adapters/abstract/transaction.rb | |
parent | 3a59dd212315ebb9bae8338b98af259ac00bbef3 (diff) | |
download | rails-07d3d402341e81ada0214f2cb2be1da69eadfe72.tar.gz rails-07d3d402341e81ada0214f2cb2be1da69eadfe72.tar.bz2 rails-07d3d402341e81ada0214f2cb2be1da69eadfe72.zip |
Change transaction callbacks to not swallowing errors.
Before this change any error raised inside a transaction callback
are rescued and printed in the logs.
Now these errors are not rescue anymore and just bubble up,
as the other callbacks.
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/abstract/transaction.rb')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/abstract/transaction.rb | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb b/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb index fd666c8c39..f6ef3b0675 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb @@ -69,12 +69,7 @@ module ActiveRecord def rollback_records ite = records.uniq while record = ite.shift - begin - record.rolledback! full_rollback? - rescue => e - raise if ActiveRecord::Base.raise_in_transactional_callbacks - record.logger.error(e) if record.respond_to?(:logger) && record.logger - end + record.rolledback! full_rollback? end ensure ite.each do |i| @@ -89,12 +84,7 @@ module ActiveRecord def commit_records ite = records.uniq while record = ite.shift - begin - record.committed! - rescue => e - raise if ActiveRecord::Base.raise_in_transactional_callbacks - record.logger.error(e) if record.respond_to?(:logger) && record.logger - end + record.committed! end ensure ite.each do |i| |