diff options
Diffstat (limited to 'db/post_migrate/20191114173624_set_resolved_state_on_vulnerabilities.rb')
-rw-r--r-- | db/post_migrate/20191114173624_set_resolved_state_on_vulnerabilities.rb | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/db/post_migrate/20191114173624_set_resolved_state_on_vulnerabilities.rb b/db/post_migrate/20191114173624_set_resolved_state_on_vulnerabilities.rb deleted file mode 100644 index 2900ef852a5..00000000000 --- a/db/post_migrate/20191114173624_set_resolved_state_on_vulnerabilities.rb +++ /dev/null @@ -1,31 +0,0 @@ -# frozen_string_literal: true - -class SetResolvedStateOnVulnerabilities < ActiveRecord::Migration[5.2] - DOWNTIME = false - - def up - execute <<~SQL - -- selecting IDs for all non-orphan Findings that either have no feedback or it's a non-dismissal feedback - WITH resolved_vulnerability_ids AS #{Gitlab::Database::AsWithMaterialized.materialized_if_supported} ( - SELECT DISTINCT vulnerability_id AS id - FROM vulnerability_occurrences - LEFT JOIN vulnerability_feedback ON vulnerability_feedback.project_fingerprint = ENCODE(vulnerability_occurrences.project_fingerprint::bytea, 'HEX') - WHERE vulnerability_id IS NOT NULL - AND (vulnerability_feedback.id IS NULL OR vulnerability_feedback.feedback_type <> 0) - ) - UPDATE vulnerabilities - SET state = 3, resolved_by_id = closed_by_id, resolved_at = NOW() - FROM resolved_vulnerability_ids - WHERE vulnerabilities.id IN (resolved_vulnerability_ids.id) - AND state = 2 -- only 'closed' Vulnerabilities become 'resolved' - SQL - end - - def down - execute <<~SQL - UPDATE vulnerabilities - SET state = 2, resolved_by_id = NULL, resolved_at = NULL -- state = 'closed' - WHERE state = 3 -- 'resolved' - SQL - end -end |