diff options
Diffstat (limited to 'activerecord')
-rw-r--r-- | activerecord/lib/active_record/relation/merger.rb | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/activerecord/lib/active_record/relation/merger.rb b/activerecord/lib/active_record/relation/merger.rb index eb72d551da..38f49912d1 100644 --- a/activerecord/lib/active_record/relation/merger.rb +++ b/activerecord/lib/active_record/relation/merger.rb @@ -102,7 +102,9 @@ module ActiveRecord rhs_wheres = values[:where] || [] lhs_wheres = relation.where_values - relation.where_values = merged_wheres(lhs_wheres, rhs_wheres) + _, kept = partition_overwrites(lhs_wheres, rhs_wheres) + + relation.where_values = kept + rhs_wheres relation.bind_values = merged_binds if values[:reordering] @@ -134,10 +136,6 @@ module ActiveRecord end end - def merged_wheres(lhs_wheres, rhs_wheres) - partition_overwrites(lhs_wheres, rhs_wheres).last + rhs_wheres - end - # Remove equalities from the existing relation with a LHS which is # present in the relation being merged in. # returns [things_to_remove, things_to_keep] |