Skip to content

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

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.

Edited by Alex Kalderimis

Merge request reports

Loading