aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/associations/preloader/association.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2012-04-18 19:27:04 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2012-04-18 19:27:04 -0700
commit1166d49f62ccab789be208112163ad13183224e2 (patch)
tree1ccdc4cda401e9fab970999324307e66082ea688 /activerecord/lib/active_record/associations/preloader/association.rb
parent39861395ffeaed6a164da5011f427f4184626b49 (diff)
downloadrails-1166d49f62ccab789be208112163ad13183224e2.tar.gz
rails-1166d49f62ccab789be208112163ad13183224e2.tar.bz2
rails-1166d49f62ccab789be208112163ad13183224e2.zip
Revert "Fix #5667. Preloading should ignore scoping."
Causes a subtle regression where record.reload includes the default scope. Hard to reproduce in isolation. Seems like the relation is getting infected by some previous usage. This reverts commit dffbb521a0d00c8673a3ad6e0e8ff526f32daf4e.
Diffstat (limited to 'activerecord/lib/active_record/associations/preloader/association.rb')
-rw-r--r--activerecord/lib/active_record/associations/preloader/association.rb5
1 files changed, 2 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/associations/preloader/association.rb b/activerecord/lib/active_record/associations/preloader/association.rb
index ab50e43ea0..779f8164cc 100644
--- a/activerecord/lib/active_record/associations/preloader/association.rb
+++ b/activerecord/lib/active_record/associations/preloader/association.rb
@@ -77,7 +77,7 @@ module ActiveRecord
# Some databases impose a limit on the number of ids in a list (in Oracle it's 1000)
# Make several smaller queries if necessary or make one query if the adapter supports it
sliced = owner_keys.each_slice(model.connection.in_clause_length || owner_keys.size)
- records = sliced.map { |slice| records_for(slice).to_a }.flatten
+ records = sliced.map { |slice| records_for(slice) }.flatten
end
# Each record may have multiple owners, and vice-versa
@@ -93,8 +93,7 @@ module ActiveRecord
end
def build_scope
- scope = klass.unscoped
- scope.default_scoped = true
+ scope = klass.scoped
scope = scope.where(process_conditions(options[:conditions]))
scope = scope.where(process_conditions(preload_options[:conditions]))