class ActiveRecord::Relation::Merger

def merge_outer_joins

def merge_outer_joins
  return if other.left_outer_joins_values.empty?
  if other.model == relation.model
    relation.left_outer_joins_values |= other.left_outer_joins_values
  else
    associations, others = other.left_outer_joins_values.partition do |join|
      case join
      when Hash, Symbol, Array; true
      end
    end
    join_dependency = other.construct_join_dependency(
      associations, Arel::Nodes::OuterJoin
    )
    relation.left_outer_joins!(join_dependency, *others)
  end
end