query groupVulnerabilities timeout
Summary
Originally reported in #327607 (comment 1127071976).
GraphQL query used: ee/app/assets/javascripts/security_dashboard/graphql/queries/group_vulnerabilities.query.graphql
Resulting SQL
/*application:web,correlation_id:6d7184ede540186fd9d5c1459a55e892,endpoint_id:GraphqlController#execute,db_config_name:main_replica*/
SELECT "vulnerability_reads".*
FROM unnest(ARRAY(
SELECT "namespaces"."id"
FROM "namespaces"
WHERE "namespaces"."type" = $1
AND (traversal_ids @> ($2)))::bigint[])
AS "namespace_ids"("namespace_id"),
unnest($3::smallint[]) AS "report_types"("report_type"),
unnest($4::smallint[]) AS "states"("state"),
LATERAL (SELECT "vulnerability_reads".*
FROM "vulnerability_reads"
WHERE (vulnerability_reads."namespace_id" = "namespace_ids"."namespace_id")
AND (vulnerability_reads."report_type" = "report_types"."report_type")
AND (vulnerability_reads."state" = "states"."state")
ORDER BY "vulnerability_reads"."severity" DESC, "vulnerability_reads"."vulnerability_id" DESC LIMIT $5)
AS vulnerability_reads ORDER BY "vulnerability_reads"."severity" DESC, "vulnerability_reads"."vulnerability_id" DESC LIMIT $6
Backtrace
lib/gitlab/database/load_balancing/connection_proxy.rb:104:in `block in read_using_load_balancer'
lib/gitlab/database/load_balancing/load_balancer.rb:55:in `read'
lib/gitlab/database/load_balancing/connection_proxy.rb:103:in `read_using_load_balancer'
lib/gitlab/database/load_balancing/connection_proxy.rb:48:in `select_all'
lib/unnested_in_filters/dsl.rb:62:in `load'
lib/unnested_in_filters/dsl.rb:64:in `load'
ee/app/models/vulnerabilities/read.rb:54:in `block (3 levels) in <class:Read>'
lib/gitlab/graphql/pagination/keyset/connection.rb:135:in `block in limited_nodes'
lib/gitlab/utils/strong_memoize.rb:44:in `strong_memoize'
lib/gitlab/graphql/pagination/keyset/connection.rb:117:in `limited_nodes'
lib/gitlab/graphql/pagination/keyset/connection.rb:96:in `nodes'
lib/gitlab/graphql/connection_redaction.rb:23:in `block in nodes'
lib/gitlab/graphql/connection_redaction.rb:16:in `redacted'
lib/gitlab/graphql/connection_redaction.rb:23:in `nodes'
lib/gitlab/graphql/tracers/timer_tracer.rb:20:in `trace'
lib/gitlab/graphql/generic_tracing.rb:48:in `with_labkit_tracing'
lib/gitlab/graphql/generic_tracing.rb:38:in `platform_trace'
lib/gitlab/graphql/tracers/logger_tracer.rb:14:in `trace'
lib/gitlab/graphql/tracers/metrics_tracer.rb:13:in `trace'
lib/gitlab/graphql/tracers/application_context_tracer.rb:23:in `trace'
lib/gitlab/graphql/tracers/timer_tracer.rb:20:in `trace'
lib/gitlab/graphql/generic_tracing.rb:48:in `with_labkit_tracing'
lib/gitlab/graphql/generic_tracing.rb:38:in `platform_trace'
lib/gitlab/graphql/tracers/logger_tracer.rb:14:in `trace'
lib/gitlab/graphql/tracers/metrics_tracer.rb:13:in `trace'
lib/gitlab/graphql/tracers/application_context_tracer.rb:23:in `trace'
lib/gitlab/graphql/tracers/timer_tracer.rb:20:in `trace'
lib/gitlab/graphql/generic_tracing.rb:48:in `with_labkit_tracing'
lib/gitlab/graphql/generic_tracing.rb:38:in `platform_trace'
lib/gitlab/graphql/tracers/logger_tracer.rb:14:in `trace'
lib/gitlab/graphql/tracers/metrics_tracer.rb:13:in `trace'
lib/gitlab/graphql/tracers/application_context_tracer.rb:23:in `trace'
app/graphql/gitlab_schema.rb:51:in `multiplex'
app/controllers/graphql_controller.rb:167:in `execute_query'
app/controllers/graphql_controller.rb:57:in `execute'
ee/lib/gitlab/ip_address_state.rb:10:in `with'
ee/app/controllers/ee/application_controller.rb:45:in `set_current_ip_address'
app/controllers/application_controller.rb:531:in `set_current_admin'
lib/gitlab/session.rb:11:in `with_session'
app/controllers/application_controller.rb:522:in `set_session_storage'
lib/gitlab/i18n.rb:107:in `with_locale'
lib/gitlab/i18n.rb:113:in `with_user_locale'
app/controllers/application_controller.rb:516:in `set_locale'
app/controllers/application_controller.rb:510:in `set_current_context'
ee/lib/omni_auth/strategies/group_saml.rb:41:in `other_phase'
lib/gitlab/metrics/elasticsearch_rack_middleware.rb:16:in `call'
lib/gitlab/middleware/memory_report.rb:13:in `call'
lib/gitlab/middleware/speedscope.rb:13:in `call'
lib/gitlab/database/load_balancing/rack_middleware.rb:23:in `call'
lib/gitlab/middleware/rails_queue_duration.rb:33:in `call'
lib/gitlab/metrics/rack_middleware.rb:16:in `block in call'
lib/gitlab/metrics/web_transaction.rb:46:in `run'
lib/gitlab/metrics/rack_middleware.rb:16:in `call'
lib/gitlab/jira/middleware.rb:19:in `call'
lib/gitlab/middleware/go.rb:20:in `call'
lib/gitlab/etag_caching/middleware.rb:21:in `call'
lib/gitlab/middleware/query_analyzer.rb:11:in `block in call'
lib/gitlab/database/query_analyzer.rb:37:in `within'
lib/gitlab/middleware/query_analyzer.rb:11:in `call'
lib/gitlab/middleware/multipart.rb:173:in `call'
lib/gitlab/middleware/read_only/controller.rb:50:in `call'
lib/gitlab/middleware/read_only.rb:18:in `call'
lib/gitlab/middleware/same_site_cookies.rb:27:in `call'
lib/gitlab/middleware/handle_malformed_strings.rb:21:in `call'
lib/gitlab/middleware/basic_health_check.rb:25:in `call'
lib/gitlab/middleware/handle_ip_spoof_attack_error.rb:25:in `call'
lib/gitlab/middleware/request_context.rb:21:in `call'
lib/gitlab/middleware/webhook_recursion_detection.rb:15:in `call'
config/initializers/fix_local_cache_middleware.rb:11:in `call'
lib/gitlab/middleware/compressed_json.rb:26:in `call'
lib/gitlab/middleware/rack_multipart_tempfile_factory.rb:19:in `call'
lib/gitlab/middleware/sidekiq_web_static.rb:20:in `call'
lib/gitlab/metrics/requests_rack_middleware.rb:77:in `call'
lib/gitlab/middleware/release_env.rb:13:in `call'
Steps to reproduce
Example Project
What is the current bug behavior?
What is the expected correct behavior?
Relevant logs and/or screenshots
Output of checks
Results of GitLab environment info
Expand for output related to GitLab environment info
(For installations with omnibus-gitlab package run and paste the output of: `sudo gitlab-rake gitlab:env:info`) (For installations from source run and paste the output of: `sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production`)
Results of GitLab application Check
Expand for output related to the GitLab application check
(For installations with omnibus-gitlab package run and paste the output of:
sudo gitlab-rake gitlab:check SANITIZE=true)(For installations from source run and paste the output of:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production SANITIZE=true)(we will only investigate if the tests are passing)
Possible fixes
Edited by Thiago Figueiró