Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Ticket #6559: faster_add_order.patch

File faster_add_order.patch, 1.1 kB (added by skaes, 2 years ago)
  • activerecord/lib/active_record/base.rb

    old new  
    10961098 
    10971099          sql << " GROUP BY #{options[:group]} " if options[:group] 
    10981100 
    1099           add_order!(sql, options[:order]
     1101          add_order!(sql, options[:order], scope
    11001102          add_limit!(sql, options, scope) 
    11011103          add_lock!(sql, options, scope) 
    11021104 
     
    11201122          end 
    11211123        end 
    11221124 
    1123         def add_order!(sql, order) 
     1125        def add_order!(sql, order, scope = :auto) 
     1126          scope = scope(:find) if :auto == scope 
     1127          scoped_order = scope[:order] if scope 
    11241128          if order 
    11251129            sql << " ORDER BY #{order}" 
    1126             sql << ", #{scope(:find, :order)}" if scoped?(:find, :order) 
     1130            sql << ", #{scoped_order}" if scoped_order 
    11271131          else 
    1128             sql << " ORDER BY #{scope(:find, :order)}" if scoped?(:find, :order) 
     1132            sql << " ORDER BY #{scoped_order}" if scoped_order 
    11291133          end 
    11301134        end 
    11311135