Add indexes to support filtering issues by last test report state
What does this MR do and why?
On !100045 (merged) we added GraphQL
endpoints to support filtering issues by its latest requirements_managemenent_test_reports
associated record.
Adds onde index to support the following queries:
- Query to filter by test report state
- Query to filter by missing test report state, when there are no associated test report records with the issue:
More context at !100045 (comment 1138368270)
related to #378170 (closed)
Migration output
main: == 20221019141508 AddIndexToTestReportsIssueIdCreatedAtAndId: migrating =======
main: -- transaction_open?()
main: -> 0.0000s
main: -- index_exists?("requirements_management_test_reports", [:issue_id, :created_at, :id], {:name=>"idx_test_reports_on_issue_id_created_at_and_id", :algorithm=>:concurrently})
main: -> 0.0020s
main: -- execute("SET statement_timeout TO 0")
main: -> 0.0003s
main: -- add_index("requirements_management_test_reports", [:issue_id, :created_at, :id], {:name=>"idx_test_reports_on_issue_id_created_at_and_id", :algorithm=>:concurrently})
main: -> 0.0008s
main: -- execute("RESET statement_timeout")
main: -> 0.0004s
main: == 20221019141508 AddIndexToTestReportsIssueIdCreatedAtAndId: migrated (0.0056s)
ci: == 20221019141508 AddIndexToTestReportsIssueIdCreatedAtAndId: migrating =======
ci: -- transaction_open?()
ci: -> 0.0000s
ci: -- index_exists?("requirements_management_test_reports", [:issue_id, :created_at, :id], {:name=>"idx_test_reports_on_issue_id_created_at_and_id", :algorithm=>:concurrently})
ci: -> 0.0023s
ci: -- execute("SET statement_timeout TO 0")
ci: -> 0.0003s
ci: -- add_index("requirements_management_test_reports", [:issue_id, :created_at, :id], {:name=>"idx_test_reports_on_issue_id_created_at_and_id", :algorithm=>:concurrently})
ci: -> 0.0009s
ci: -- execute("RESET statement_timeout")
ci: -> 0.0004s
ci: == 20221019141508 AddIndexToTestReportsIssueIdCreatedAtAndId: migrated (0.0061s)
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Felipe Artur