From c6199d7354b2aa5ff7e0c736e1f8ee4645a528fa Mon Sep 17 00:00:00 2001 From: Ladislav Smola Date: Thu, 22 Jun 2017 11:29:04 +0200 Subject: [PATCH] Migration keep :deleted_on as the only only source of truth for disconnect Migration keep :deleted_on as the only only source of truth for disconnect --- ...102506_add_deleted_to_containers_tables.rb | 31 ++++++------------- ...102536_use_deleted_in_containers_tables.rb | 4 +-- 2 files changed, 12 insertions(+), 23 deletions(-) diff --git a/db/migrate/20170530102506_add_deleted_to_containers_tables.rb b/db/migrate/20170530102506_add_deleted_to_containers_tables.rb index 18ad58dcf53..2a98c46266a 100644 --- a/db/migrate/20170530102506_add_deleted_to_containers_tables.rb +++ b/db/migrate/20170530102506_add_deleted_to_containers_tables.rb @@ -1,25 +1,14 @@ class AddDeletedToContainersTables < ActiveRecord::Migration[5.0] def change - add_column :container_definitions, :deleted, :boolean, :default => false, :null => false - add_column :container_groups, :deleted, :boolean, :default => false, :null => false - add_column :container_images, :deleted, :boolean, :default => false, :null => false - add_column :container_projects, :deleted, :boolean, :default => false, :null => false - add_column :containers, :deleted, :boolean, :default => false, :null => false - - add_index :container_definitions, :deleted, - :name => "index_container_definitions_on_deleted_false", - :where => "NOT deleted" - add_index :container_groups, :deleted, - :name => "container_groups_on_deleted_false", - :where => "NOT deleted" - add_index :container_images, :deleted, - :name => "index_container_images_on_deleted_false", - :where => "NOT deleted" - add_index :container_projects, :deleted, - :name => "index_container_projects_on_deleted_false", - :where => "NOT deleted" - add_index :containers, :deleted, - :name => "index_containers_on_deleted_false", - :where => "NOT deleted" + add_index :container_definitions, :deleted_on, + :name => "index_container_definitions_on_deleted_on" + add_index :container_groups, :deleted_on, + :name => "container_groups_on_deleted_on" + add_index :container_images, :deleted_on, + :name => "index_container_images_on_deleted_on" + add_index :container_projects, :deleted_on, + :name => "index_container_projects_on_deleted_on" + add_index :containers, :deleted_on, + :name => "index_containers_on_deleted_on" end end diff --git a/db/migrate/20170530102536_use_deleted_in_containers_tables.rb b/db/migrate/20170530102536_use_deleted_in_containers_tables.rb index d05c5649433..27752a22928 100644 --- a/db/migrate/20170530102536_use_deleted_in_containers_tables.rb +++ b/db/migrate/20170530102536_use_deleted_in_containers_tables.rb @@ -14,11 +14,11 @@ class Container < ActiveRecord::Base end def disconnect_to_soft_delete(model) - model.where(:ems_id => nil).update_all("ems_id = old_ems_id, deleted = 't'") + model.where.not(:deleted_on => nil).update_all("ems_id = old_ems_id") end def soft_delete_to_disconnect(model) - model.where(:deleted => true).update_all(:ems_id => nil, :deleted => false) + model.where.not(:deleted_on => nil).update_all(:ems_id => nil) end def up