aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
diff options
context:
space:
mode:
authorMatthew Draper <matthew@trebex.net>2018-08-23 19:40:04 +0930
committerGitHub <noreply@github.com>2018-08-23 19:40:04 +0930
commit123fe0c9ac559cb58a208c23a96669845f24dfb1 (patch)
tree5ea6d9893882d6eb48af809c54ec9f5c622dea83 /activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
parent2a321bff402bd990558b8a303f7168b5c4bcfc1d (diff)
parent0ac81ee6ff3d1625fdbcc40b12c00cbff2208077 (diff)
downloadrails-123fe0c9ac559cb58a208c23a96669845f24dfb1.tar.gz
rails-123fe0c9ac559cb58a208c23a96669845f24dfb1.tar.bz2
rails-123fe0c9ac559cb58a208c23a96669845f24dfb1.zip
Merge pull request #32647 from eugeneius/lazy_transactions
Omit BEGIN/COMMIT statements for empty transactions
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb')
-rw-r--r--activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb b/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
index c61e94f159..efe454fa7f 100644
--- a/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
@@ -186,6 +186,10 @@ module ActiveRecord
true
end
+ def supports_lazy_transactions?
+ true
+ end
+
# REFERENTIAL INTEGRITY ====================================
def disable_referential_integrity # :nodoc:
@@ -212,6 +216,8 @@ module ActiveRecord
end
def exec_query(sql, name = nil, binds = [], prepare: false)
+ materialize_transactions
+
type_casted_binds = type_casted_binds(binds)
log(sql, name, binds, type_casted_binds) do
@@ -252,6 +258,8 @@ module ActiveRecord
end
def execute(sql, name = nil) #:nodoc:
+ materialize_transactions
+
log(sql, name) do
ActiveSupport::Dependencies.interlock.permit_concurrent_loads do
@connection.execute(sql)