Tests tab is very slow for large test suites
Summary
The "Tests" tab is very slow to load, and the UI looks wonky when column contents are long.
Steps to reproduce
We followed the instructions here to add test reporting to our GitLab pipeline. Our CI basically looks like this:
test_rspec:
stage: test
retry: 2
parallel: 30
script:
- bundle exec rake "knapsack:rspec[--format RspecJunitFormatter --out rspec.xml]"
artifacts:
paths:
- rspec.xml
reports:
junit: rspec.xml
We have approximately 27000 total tests. Loading the tests tab takes a while, then opening up and viewing the errors is slow. Finally, the column contents overlap each other.
Example Project
Here is the link to an example GitLab pipeline: https://gitlab.com/flexe/warehouser/pipelines/102447937/test_report
What is the current bug behavior?
The page is slow, and the column contents overlap.
What is the expected correct behavior?
The column contents should not overlap, and the tab should load in less than a couple seconds. In particular, it appears to be loading the results of every single test run, when all I really care to load are the test failures.
Relevant logs and/or screenshots
Output of checks
This bug happens on GitLab.com
Results of GitLab environment info
We are running the GitLab Kubernetes executors. We are using the helm chart gitlab/gitlab-runner, version 0.10.1.
Here's the complete config:
resource "helm_release" "gitlab-runner" {
chart = "gitlab/gitlab-runner" # Manually aligned to the hlem repo in ../main.ft
name = "${var.name}"
version = "v0.10.1"
set {
name = "gitlabUrl"
value = "https://gitlab.com/"
}
set {
name = "runnerRegistrationToken"
value = "${var.gitlab_runner_registration_token}"
}
# Helm Chart values https://gitlab.com/gitlab-org/charts/gitlab-runner/blob/master/values.yaml
# This control the number of jobs that can run in parllel in the cluster
# We can increase this or decrease
set {
name = "concurrent"
value = "10"
}
set {
name = "rbac.create"
value = "true"
}
set {
name = "runners.image"
value = "ubuntu:18.04"
}
set {
name = "runners.privileged"
value = "true"
}
set {
name = "runners.nodeSelector.purpose"
value = "..."
}
set {
name = "nodeSelector.type"
value = "..."
}
set {
name = "runners.cache.cacheType"
value = "gcs"
}
set {
name = "runners.cache.cachePath"
value = "gitlab_runner"
}
set {
name = "runners.cache.cacheShared"
value = "true"
}
set {
name = "runners.cache.gcsBucketName"
value = "..."
}
set {
name = "runners.cache.secretName"
value = "..."
}
# Build Resource Request
set {
name = "runners.builds.cpuRequests"
value = "1000m"
}
set {
name = "runners.builds.memoryRequests"
value = "512Mi"
}
# Build services resource request (docker, postgres etc)
set {
name = "runners.services.cpuRequests"
value = "500m"
}
set {
name = "runners.services.memoryRequests"
value = "256Mi"
}
}
Results of GitLab application Check
Not running from source or omnibus.
Possible fixes
N/A
