Skip to content

Use batch sum counter to sum Jira imported issues

Alishan Ladhani requested to merge ali/use-batch-sum-counter into master

What does this MR do?

This MR leverages the batch sum helper introduced in !35922 (merged) to compute the sum of jira imported issues in usage ping.

While this optimization is not necessary right now, we are using this opportunity to test out the batch sum logic. This will be especially useful when we need to sum a column in a large table.

Related to #215313 (closed)

Performance

From #database-lab

Before

SELECT SUM("jira_imports"."imported_issues_count") FROM "jira_imports" WHERE "jira_imports"."status" = 4

Time: 8.816 ms

Explain: https://explain.depesz.com/s/PiI3

After

SELECT MIN("jira_imports"."id") FROM "jira_imports" WHERE "jira_imports"."status" = 4

Time: 2.084 ms

Explain: https://explain.depesz.com/s/vLV2


SELECT MAX("jira_imports"."id") FROM "jira_imports" WHERE "jira_imports"."status" = 4

Time: 5.148 ms

Explain: https://explain.depesz.com/s/SOXa


 SELECT SUM("jira_imports"."imported_issues_count") FROM "jira_imports" WHERE "jira_imports"."status" = 4 AND "jira_imports"."id" BETWEEN 0 AND 999

Time: 0.465 ms

Explain: https://explain.depesz.com/s/TlQ2

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team
Edited by Alishan Ladhani

Merge request reports