Increase GraphQL complexity of MergeRequest.participants
What does this MR do?
MergeRequest.participants
is the union of author, assignees,
reviewers, note authors, note body mentions, emoji-adders and note
emoji-adders. As such its complexity is currently unrepresentative of
its cost. This change triples the complexity from 5 to 15, better representing
the expense of this call.
Potential impact
It is currently thought that this will have limited impact. A search through our codebase for files that retrieve participants show we have the following queries:
- app/assets/javascripts/vue_shared/components/sidebar/queries/getIssueParticipants.query.graphql
- app/assets/javascripts/design_management/graphql/queries/get_design.query.graphql
- app/graphql/queries/epic/epic_details.query.graphql
- ee/app/assets/javascripts/oncall_schedules/graphql/create_oncall_schedule_rotation.mutation.graphql
None of these files appears to refer to MergeRequest.participants
.
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
This might affect some of our front-end queries, which could exceed our complexity thresholds. This must be verified against all existing GraphQL frontend queries.
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Edited by Alex Kalderimis