From 2025a98f5877e69ddf3453c38d397e1b7564cf89 Mon Sep 17 00:00:00 2001 From: David Cook Date: Fri, 23 Jun 2023 11:49:29 +1000 Subject: [PATCH] Delete stock_items for master variants All variants have stock_items records, but master variants never use them, so these were always redundant. --- db/migrate/20230605133804_remove_master_variants.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/db/migrate/20230605133804_remove_master_variants.rb b/db/migrate/20230605133804_remove_master_variants.rb index e2edd7b25f..84477199f4 100644 --- a/db/migrate/20230605133804_remove_master_variants.rb +++ b/db/migrate/20230605133804_remove_master_variants.rb @@ -7,6 +7,7 @@ class RemoveMasterVariants < ActiveRecord::Migration[7.0] handle_master_line_items delete_master_inventory_units delete_master_variant_prices + delete_master_stock_items delete_master_variants end @@ -53,6 +54,16 @@ class RemoveMasterVariants < ActiveRecord::Migration[7.0] ) end + def delete_master_stock_items + ActiveRecord::Base.connection.execute(<<-SQL + DELETE FROM spree_stock_items + USING spree_variants + WHERE spree_variants.is_master = true + AND spree_variants.id = spree_stock_items.variant_id + SQL + ) + end + def delete_master_variants ActiveRecord::Base.connection.execute(<<-SQL DELETE FROM spree_variants