Skip to content

Commit 4d57270

Browse files
committed
Eliminate lease_connection
1 parent 2187039 commit 4d57270

File tree

1 file changed

+14
-12
lines changed
  • lib/active_record/connection_adapters/sqlserver/core_ext

1 file changed

+14
-12
lines changed

lib/active_record/connection_adapters/sqlserver/core_ext/preloader.rb

+14-12
Original file line numberDiff line numberDiff line change
@@ -8,23 +8,25 @@ module SQLServer
88
module CoreExt
99
module LoaderQuery
1010
def load_records_for_keys(keys, &block)
11-
return super unless scope.connection.sqlserver?
11+
scope.with_connection do |connection|
12+
return super unless connection.sqlserver?
1213

13-
return [] if keys.empty?
14+
return [] if keys.empty?
1415

15-
if association_key_name.is_a?(Array)
16-
query_constraints = Hash.new { |hsh, key| hsh[key] = Set.new }
16+
if association_key_name.is_a?(Array)
17+
query_constraints = Hash.new { |hsh, key| hsh[key] = Set.new }
1718

18-
keys.each_with_object(query_constraints) do |values_set, constraints|
19-
association_key_name.zip(values_set).each do |key_name, value|
20-
constraints[key_name] << value
19+
keys.each_with_object(query_constraints) do |values_set, constraints|
20+
association_key_name.zip(values_set).each do |key_name, value|
21+
constraints[key_name] << value
22+
end
2123
end
22-
end
2324

24-
scope.where(query_constraints).load(&block)
25-
else
26-
keys.each_slice(in_clause_length).flat_map do |slice|
27-
scope.where(association_key_name => slice).load(&block).records
25+
scope.where(query_constraints).load(&block)
26+
else
27+
keys.each_slice(in_clause_length).flat_map do |slice|
28+
scope.where(association_key_name => slice).load(&block).records
29+
end
2830
end
2931
end
3032
end

0 commit comments

Comments
 (0)