Skip to content

Remove unnecessary finding evidence tables

What does this MR do and why?

This MR removes unnecessary database tables, as the implementation changed from multiple associations to a jsonb field in one table. These tables are not being written to and as such should not have any data in them.

Screenshots or screen recordings

Migration:

== 20211207173510 RemoveExtraFindingEvidenceTablesForeignKeys: migrating ======
-- transaction_open?()
   -> 0.0000s
-- remove_foreign_key(:vulnerability_finding_evidence_assets, :vulnerability_finding_evidences)
   -> 0.0066s
-- remove_foreign_key(:vulnerability_finding_evidence_headers, :vulnerability_finding_evidence_requests)
   -> 0.0070s
-- remove_foreign_key(:vulnerability_finding_evidence_headers, :vulnerability_finding_evidence_responses)
   -> 0.0045s
-- remove_foreign_key(:vulnerability_finding_evidence_requests, :vulnerability_finding_evidences)
   -> 0.0039s
-- remove_foreign_key(:vulnerability_finding_evidence_requests, :vulnerability_finding_evidence_supporting_messages)
   -> 0.0050s
-- remove_foreign_key(:vulnerability_finding_evidence_responses, :vulnerability_finding_evidences)
   -> 0.0065s
-- remove_foreign_key(:vulnerability_finding_evidence_responses, :vulnerability_finding_evidence_supporting_messages)
   -> 0.0037s
-- remove_foreign_key(:vulnerability_finding_evidence_sources, :vulnerability_finding_evidences)
   -> 0.0044s
-- remove_foreign_key(:vulnerability_finding_evidence_supporting_messages, :vulnerability_finding_evidences)
   -> 0.0070s
== 20211207173510 RemoveExtraFindingEvidenceTablesForeignKeys: migrated (0.0663s) 

== 20211207173511 RemoveExtraFindingEvidenceTables: migrating =================
-- transaction_open?()
   -> 0.0000s
-- drop_table(:vulnerability_finding_evidence_assets, {:if_exists=>true})
   -> 0.0040s
-- drop_table(:vulnerability_finding_evidence_headers, {:if_exists=>true})
   -> 0.0029s
-- drop_table(:vulnerability_finding_evidence_requests, {:if_exists=>true})
   -> 0.0033s
-- drop_table(:vulnerability_finding_evidence_responses, {:if_exists=>true})
   -> 0.0019s
-- drop_table(:vulnerability_finding_evidence_sources, {:if_exists=>true})
   -> 0.0015s
-- drop_table(:vulnerability_finding_evidence_supporting_messages, {:if_exists=>true})
   -> 0.0021s
== 20211207173511 RemoveExtraFindingEvidenceTables: migrated (0.0441s) ========

Rollback:

== 20211207173511 RemoveExtraFindingEvidenceTables: reverting =================
-- create_table(:vulnerability_finding_evidence_assets, {:if_not_exists=>true})
-- quote_column_name(:type)
   -> 0.0000s
-- quote_column_name(:name)
   -> 0.0000s
-- quote_column_name(:url)
   -> 0.0000s
   -> 0.0184s
-- create_table(:vulnerability_finding_evidence_sources, {:if_not_exists=>true})
-- quote_column_name(:name)
   -> 0.0000s
-- quote_column_name(:url)
   -> 0.0000s
   -> 0.0502s
-- create_table(:vulnerability_finding_evidence_supporting_messages, {:if_not_exists=>true})
-- quote_column_name(:name)
   -> 0.0000s
   -> 0.0638s
-- create_table(:vulnerability_finding_evidence_requests, {:if_not_exists=>true})
-- quote_column_name(:method)
   -> 0.0000s
-- quote_column_name(:url)
   -> 0.0000s
-- quote_column_name(:body)
   -> 0.0000s
   -> 0.0142s
-- create_table(:vulnerability_finding_evidence_responses, {:if_not_exists=>true})
-- quote_column_name(:reason_phrase)
   -> 0.0000s
-- quote_column_name(:body)
   -> 0.0000s
   -> 0.0292s
-- create_table(:vulnerability_finding_evidence_headers, {:if_not_exists=>true})
-- quote_column_name(:name)
   -> 0.0000s
-- quote_column_name(:value)
   -> 0.0000s
   -> 0.0138s
== 20211207173511 RemoveExtraFindingEvidenceTables: reverted (0.1904s) ========

== 20211207173510 RemoveExtraFindingEvidenceTablesForeignKeys: reverting ======
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_assets, :vulnerability_finding_evidences, {:on_delete=>:cascade})
   -> 0.0047s
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_headers, :vulnerability_finding_evidence_requests, {:on_delete=>:cascade})
   -> 0.0044s
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_headers, :vulnerability_finding_evidence_responses, {:on_delete=>:cascade})
   -> 0.0025s
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_requests, :vulnerability_finding_evidences, {:on_delete=>:cascade})
   -> 0.0024s
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_requests, :vulnerability_finding_evidence_supporting_messages, {:on_delete=>:cascade})
   -> 0.0025s
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_responses, :vulnerability_finding_evidences, {:on_delete=>:cascade})
   -> 0.0014s
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_responses, :vulnerability_finding_evidence_supporting_messages, {:on_delete=>:cascade})
   -> 0.0024s
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_sources, :vulnerability_finding_evidences, {:on_delete=>:cascade})
   -> 0.0026s
-- transaction_open?()
   -> 0.0000s
-- add_foreign_key(:vulnerability_finding_evidence_supporting_messages, :vulnerability_finding_evidences, {:on_delete=>:cascade})
   -> 0.0019s
== 20211207173510 RemoveExtraFindingEvidenceTablesForeignKeys: reverted (0.0674s)  

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #343284

Edited by Mayra Cabrera

Merge request reports