class ActiveRecord::Relation::Merger
def merge_joins
def merge_joins return if other.joins_values.empty? if other.model == relation.model relation.joins_values |= other.joins_values else associations, others = other.joins_values.partition do |join| case join when Hash, Symbol, Array; true end end join_dependency = other.construct_join_dependency( associations, Arel::Nodes::InnerJoin ) relation.joins!(join_dependency, *others) end end