diff --git a/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb b/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb index 335eb876cf..7535e9147a 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb @@ -117,8 +117,6 @@ def rollback def commit connection.release_savepoint(savepoint_name) super - parent = connection.transaction_manager.current_transaction - records.each { |r| parent.add_record(r) } end def full_rollback?; false; end @@ -166,7 +164,9 @@ def begin_transaction(options = {}) end def commit_transaction - @stack.pop.commit + transaction = @stack.pop + transaction.commit + transaction.records.each { |r| current_transaction.add_record(r) } end def rollback_transaction