aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
diff options
context:
space:
mode:
authorJon Leighton <j@jonathanleighton.com>2011-08-10 00:49:20 +0100
committerJon Leighton <j@jonathanleighton.com>2011-08-15 23:10:15 +0100
commit8778c82e32690ed7b25664522d0bd0324ebea840 (patch)
treeaf8561113e2db38cb9bf1be659cbccb7b739ca47 /activerecord
parentfe0ec855419e1deba47277c96275a16ecf79bc9a (diff)
downloadrails-8778c82e32690ed7b25664522d0bd0324ebea840.tar.gz
rails-8778c82e32690ed7b25664522d0bd0324ebea840.tar.bz2
rails-8778c82e32690ed7b25664522d0bd0324ebea840.zip
Use a SelectCore rather than a full SelectManager
Diffstat (limited to 'activerecord')
-rw-r--r--activerecord/lib/active_record/connection_adapters/mysql2_adapter.rb5
-rw-r--r--activerecord/lib/active_record/connection_adapters/mysql_adapter.rb5
2 files changed, 6 insertions, 4 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/mysql2_adapter.rb b/activerecord/lib/active_record/connection_adapters/mysql2_adapter.rb
index 41d410e062..460745fba0 100644
--- a/activerecord/lib/active_record/connection_adapters/mysql2_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/mysql2_adapter.rb
@@ -591,8 +591,9 @@ module ActiveRecord
'__active_record_temp'
)
- subselect = Arel::SelectManager.new(select.engine, subsubselect)
- subselect.project(Arel::Table.new('__active_record_temp')[update.ast.key.name])
+ subselect = Arel::Nodes::SelectCore.new
+ subselect.from = subsubselect
+ subselect.projections << Arel::Table.new('__active_record_temp')[update.ast.key.name]
update.where update.ast.key.in(subselect)
else
diff --git a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
index d4aaf26bf3..4581c16d25 100644
--- a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
@@ -505,8 +505,9 @@ module ActiveRecord
'__active_record_temp'
)
- subselect = Arel::SelectManager.new(select.engine, subsubselect)
- subselect.project(Arel::Table.new('__active_record_temp')[update.ast.key.name])
+ subselect = Arel::Nodes::SelectCore.new
+ subselect.from = subsubselect
+ subselect.projections << Arel::Table.new('__active_record_temp')[update.ast.key.name]
update.where update.ast.key.in(subselect)
else