aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/abstract
diff options
context:
space:
mode:
authorArthur Neves <arthurnn@gmail.com>2014-07-28 13:25:19 -0400
committerArthur Neves <arthurnn@gmail.com>2014-07-28 13:51:59 -0400
commitd37bcc1d5a781687384fbe632a1850ab218ccbfd (patch)
tree98013f3ab9cb41f6903f6c1b8ac0b1c7de718969 /activerecord/lib/active_record/connection_adapters/abstract
parent97bb76dc288d998a684b17a09d79708e2e4b584a (diff)
downloadrails-d37bcc1d5a781687384fbe632a1850ab218ccbfd.tar.gz
rails-d37bcc1d5a781687384fbe632a1850ab218ccbfd.tar.bz2
rails-d37bcc1d5a781687384fbe632a1850ab218ccbfd.zip
savepoint_name should return nil for non-savepoint transactions
Also add test to assets the savepoint name
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/abstract')
-rw-r--r--activerecord/lib/active_record/connection_adapters/abstract/transaction.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb b/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb
index 7618d6902d..54f873a2a2 100644
--- a/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb
+++ b/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb
@@ -69,6 +69,10 @@ module ActiveRecord
def state
@state
end
+
+ def savepoint_name
+ nil
+ end
end
class TransactionState
@@ -233,7 +237,8 @@ module ActiveRecord
super
- @savepoint_name = "active_record_#{number}"
+ # Savepoint name only counts the Savepoint transactions, so we need to subtract 1
+ @savepoint_name = "active_record_#{number - 1}"
connection.create_savepoint(@savepoint_name)
end