Remove software_license_id from software_license_policies
What does this MR do and why?
This MR removes the software_license_id from the software_license_policies table.
This column was ignored in the previous milestone in MR !189535 (merged).
Migration up
db:migrate:up:main VERSION=20250731191714
main: == [advisory_lock_connection] object_id: 147140, pg_backend_pid: 86135
main: == 20250731191714 RemoveSoftwareLicensePoliciesSoftwareLicenseIdColumn: migrating
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- remove_column(:software_license_policies, :software_license_id)
main: -> 0.0043s
main: == 20250731191714 RemoveSoftwareLicensePoliciesSoftwareLicenseIdColumn: migrated (0.0662s)
main: == [advisory_lock_connection] object_id: 147140, pg_backend_pid: 86135
Migration down
db:migrate:down:main VERSION=20250731191714
main: == [advisory_lock_connection] object_id: 147360, pg_backend_pid: 85330
main: == 20250731191714 RemoveSoftwareLicensePoliciesSoftwareLicenseIdColumn: reverting
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- add_column(:software_license_policies, :software_license_id, :bigint, {:null=>true, :if_not_exists=>true})
main: -> 0.0360s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- execute("ALTER TABLE software_license_policies ADD CONSTRAINT fk_7a7a2a92de FOREIGN KEY (software_license_id) REFERENCES software_licenses (id) ON DELETE CASCADE NOT VALID;")
main: -> 0.0024s
main: -- execute("SET statement_timeout TO 0")
main: -> 0.0005s
main: -- execute("ALTER TABLE software_license_policies VALIDATE CONSTRAINT fk_7a7a2a92de;")
main: -> 0.0328s
main: -- execute("RESET statement_timeout")
main: -> 0.0009s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- view_exists?(:postgres_partitions)
main: -> 0.0009s
main: -- index_exists?(:software_license_policies, [:project_id, :software_license_id, :scan_result_policy_id], {:name=>"idx_software_license_policies_unique_on_project_and_scan_policy", :unique=>true, :algorithm=>:concurrently})
main: -> 0.0029s
main: -- add_index(:software_license_policies, [:project_id, :software_license_id, :scan_result_policy_id], {:name=>"idx_software_license_policies_unique_on_project_and_scan_policy", :unique=>true, :algorithm=>:concurrently})
main: -> 0.0048s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- view_exists?(:postgres_partitions)
main: -> 0.0011s
main: -- index_exists?(:software_license_policies, :software_license_id, {:name=>"index_software_license_policies_on_software_license_id", :algorithm=>:concurrently})
main: -> 0.0019s
main: -- add_index(:software_license_policies, :software_license_id, {:name=>"index_software_license_policies_on_software_license_id", :algorithm=>:concurrently})
main: -> 0.0014s
main: == 20250731191714 RemoveSoftwareLicensePoliciesSoftwareLicenseIdColumn: reverted (0.1841s)
main: == [advisory_lock_connection] object_id: 147360, pg_backend_pid: 85330
References
Related to Remove software_licenses table
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Edited by Marcos Rocha