Skip to content

Derive GitLab Team member badge from gitlab-com group

Aishwarya Subramanian requested to merge gl-badge-poc into master

What does this MR do?

The current way of determining whether a user is a GitLab employee is done by checking the domain of the user's primary email.

This MR determines the GitLab Team member by checking if the user belongs to gitlab-com group. Internally, it uses the similar cache mechanism defined for Performance bar that checks if a user belongs to a certain group.

The performance analysis for this approach is listed below:

Related to !28837 (comment 328910484)

Mentions #216802 (closed)

Analysis tool

The tool used for the analysis is GitLab Performance tool (GPT).

Since the GitLab employee badge will be referenced extensively in issues and MR, the following web tests were performed as part of this exercise:

Test result data

Analysis

  1. Project Issue:
Metric Comments Data
TTFB Average Almost identical for both approaches. On an average, revised approach performed better. Screen_Shot_2020-05-04_at_3.08.57_PM
Breaking point (BP) For both approaches, the breaking point was 60s - 100rps Screen_Shot_2020-05-04_at_3.11.24_PM
RPS result RPS for requests were under threshold upto BP. Post BP, the revised approach performed negligibly better (0.34s). Screen_Shot_2020-05-04_at_3.23.05_PM
Overall Result Score Upto BP, the ORS was above the desired value of 90%, after which it decreased drastically (below 45%). Revised approach superseded by a low margin (3.4%). Screen_Shot_2020-05-04_at_3.12.29_PM
  1. Project MR:
Metric Comments Data
TTFB Average Almost identical. Existing approach performed better on an average. Screen_Shot_2020-05-04_at_4.35.01_PM
Breaking point (BP) For both approaches, the breaking point was 20s - 20rps Screen_Shot_2020-05-04_at_4.38.06_PM
RPS result Below min. threshold for all tests. Difference got significantly higher with increasing requests. Low Standard deviation (0.2605). Screen_Shot_2020-05-04_at_4.33.55_PM
Overall Result Score All tests scored below the desired value of 90%. On an average, revised approach faired better. Screen_Shot_2020-05-04_at_4.38.59_PM

Inference

  • In comparison, revised approach performance was slightly better, not significantly
  • Both approaches perform poorly with increased requests
  • Project issue api performed significantly better than Project MR api in all metrics
Edited by 🤖 GitLab Bot 🤖

Merge request reports