summaryrefslogtreecommitdiff
path: root/db/post_migrate/20200810100921_add_target_type_to_audit_event.rb
diff options
context:
space:
mode:
Diffstat (limited to 'db/post_migrate/20200810100921_add_target_type_to_audit_event.rb')
-rw-r--r--db/post_migrate/20200810100921_add_target_type_to_audit_event.rb121
1 files changed, 0 insertions, 121 deletions
diff --git a/db/post_migrate/20200810100921_add_target_type_to_audit_event.rb b/db/post_migrate/20200810100921_add_target_type_to_audit_event.rb
deleted file mode 100644
index 8dde5945f0d..00000000000
--- a/db/post_migrate/20200810100921_add_target_type_to_audit_event.rb
+++ /dev/null
@@ -1,121 +0,0 @@
-# frozen_string_literal: true
-
-class AddTargetTypeToAuditEvent < ActiveRecord::Migration[6.0]
- include Gitlab::Database::SchemaHelpers
- include Gitlab::Database::MigrationHelpers
-
- DOWNTIME = false
- SOURCE_TABLE_NAME = 'audit_events'
- PARTITIONED_TABLE_NAME = 'audit_events_part_5fc467ac26'
- TRIGGER_FUNCTION_NAME = 'table_sync_function_2be879775d'
-
- def up
- with_lock_retries do
- # rubocop:disable Migration/AddLimitToTextColumns
- add_column('audit_events', :target_type, :text)
- add_column('audit_events_part_5fc467ac26', :target_type, :text)
- # rubocop:enable Migration/AddLimitToTextColumns
-
- create_trigger_function(TRIGGER_FUNCTION_NAME, replace: true) do
- <<~SQL
- IF (TG_OP = 'DELETE') THEN
- DELETE FROM #{PARTITIONED_TABLE_NAME} where id = OLD.id;
- ELSIF (TG_OP = 'UPDATE') THEN
- UPDATE #{PARTITIONED_TABLE_NAME}
- SET author_id = NEW.author_id,
- type = NEW.type,
- entity_id = NEW.entity_id,
- entity_type = NEW.entity_type,
- details = NEW.details,
- ip_address = NEW.ip_address,
- author_name = NEW.author_name,
- entity_path = NEW.entity_path,
- target_details = NEW.target_details,
- target_type = NEW.target_type,
- created_at = NEW.created_at
- WHERE #{PARTITIONED_TABLE_NAME}.id = NEW.id;
- ELSIF (TG_OP = 'INSERT') THEN
- INSERT INTO #{PARTITIONED_TABLE_NAME} (id,
- author_id,
- type,
- entity_id,
- entity_type,
- details,
- ip_address,
- author_name,
- entity_path,
- target_details,
- target_type,
- created_at)
- VALUES (NEW.id,
- NEW.author_id,
- NEW.type,
- NEW.entity_id,
- NEW.entity_type,
- NEW.details,
- NEW.ip_address,
- NEW.author_name,
- NEW.entity_path,
- NEW.target_details,
- NEW.target_type,
- NEW.created_at);
- END IF;
- RETURN NULL;
- SQL
- end
- end
- end
-
- def down
- with_lock_retries do
- remove_column SOURCE_TABLE_NAME, :target_type
-
- create_trigger_function(TRIGGER_FUNCTION_NAME, replace: true) do
- <<~SQL
- IF (TG_OP = 'DELETE') THEN
- DELETE FROM #{PARTITIONED_TABLE_NAME} where id = OLD.id;
- ELSIF (TG_OP = 'UPDATE') THEN
- UPDATE #{PARTITIONED_TABLE_NAME}
- SET author_id = NEW.author_id,
- type = NEW.type,
- entity_id = NEW.entity_id,
- entity_type = NEW.entity_type,
- details = NEW.details,
- ip_address = NEW.ip_address,
- author_name = NEW.author_name,
- entity_path = NEW.entity_path,
- target_details = NEW.target_details,
- created_at = NEW.created_at
- WHERE #{PARTITIONED_TABLE_NAME}.id = NEW.id;
- ELSIF (TG_OP = 'INSERT') THEN
- INSERT INTO #{PARTITIONED_TABLE_NAME} (id,
- author_id,
- type,
- entity_id,
- entity_type,
- details,
- ip_address,
- author_name,
- entity_path,
- target_details,
- created_at)
- VALUES (NEW.id,
- NEW.author_id,
- NEW.type,
- NEW.entity_id,
- NEW.entity_type,
- NEW.details,
- NEW.ip_address,
- NEW.author_name,
- NEW.entity_path,
- NEW.target_details,
- NEW.created_at);
- END IF;
- RETURN NULL;
- SQL
- end
-
- remove_column PARTITIONED_TABLE_NAME, :target_type
- end
- end
-end