aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/relation/finder_methods.rb
diff options
context:
space:
mode:
authorPratik Naik <pratiknaik@gmail.com>2010-01-12 22:20:53 +0530
committerPratik Naik <pratiknaik@gmail.com>2010-01-12 22:25:55 +0530
commita04486dc997979a2d87fc013d30b6e71a3df4a64 (patch)
treefe3df7946d7fac940124f017fa0de7af335dba75 /activerecord/lib/active_record/relation/finder_methods.rb
parentb078f7fd3910b0b174bc951cc8c0d27536b09c16 (diff)
downloadrails-a04486dc997979a2d87fc013d30b6e71a3df4a64.tar.gz
rails-a04486dc997979a2d87fc013d30b6e71a3df4a64.tar.bz2
rails-a04486dc997979a2d87fc013d30b6e71a3df4a64.zip
Delay building arel relation as long as possible for improved introspection
Diffstat (limited to 'activerecord/lib/active_record/relation/finder_methods.rb')
-rw-r--r--activerecord/lib/active_record/relation/finder_methods.rb8
1 files changed, 4 insertions, 4 deletions
diff --git a/activerecord/lib/active_record/relation/finder_methods.rb b/activerecord/lib/active_record/relation/finder_methods.rb
index c3e5f27838..3668b0997f 100644
--- a/activerecord/lib/active_record/relation/finder_methods.rb
+++ b/activerecord/lib/active_record/relation/finder_methods.rb
@@ -93,15 +93,15 @@ module ActiveRecord
result = where(primary_key.in(ids)).all
expected_size =
- if @relation.taken && ids.size > @relation.taken
- @relation.taken
+ if arel.taken && ids.size > arel.taken
+ arel.taken
else
ids.size
end
# 11 ids with limit 3, offset 9 should give 2 results.
- if @relation.skipped && (ids.size - @relation.skipped < expected_size)
- expected_size = ids.size - @relation.skipped
+ if arel.skipped && (ids.size - arel.skipped < expected_size)
+ expected_size = ids.size - arel.skipped
end
if result.size == expected_size