Skip to content

Users unable to view storage page

Summary

We have an issue where users cannot view the storage page of their group. Heres the Elasticsearch error. We believe it may have something to do with dependency_proxy_total_size_in_bytes field having a type of GraphQL::Types::Int instead of GraphQL::Types::BigInt

Steps to reproduce

Unable to reproduce.

Example Project

What is the current bug behavior?

Users are attempting to view the storage page and its stuck loading. Screenshot_2023-05-29_at_9.19.16_AM

What is the expected correct behavior?

Able to view storage page

Relevant logs and/or screenshots

Discussion thread: https://gitlab.slack.com/archives/C03UW0HPBGD/p1684724872766799

Reported here: https://gitlab.slack.com/archives/C0GQHHPGW/p1684729894000469

Ticket: https://gitlab.zendesk.com/agent/tickets/409659

The dependency_proxy_total_size_in_bytes is the sum of all of the the group’s dependency_proxy_manifests and dependency_proxy_blobs size in bytes. And both of those tables have a size column of type BigInt

We believe it may have something to do with BigInt not being added in the code here.

Exception backtrace:

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:178:in `execute_multiplex', 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:500:in `set_current_admin', lib/gitlab/session.rb:11:in `with_session', app/controllers/application_controller.rb:491: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:482:in `set_locale', app/controllers/application_controller.rb:475: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/basic_health_check.rb:25:in `call', lib/gitlab/middleware/handle_malformed_strings.rb:21:in `call', lib/gitlab/middleware/handle_ip_spoof_attack_error.rb:25:in `call', lib/gitlab/middleware/request_context.rb:15: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:45: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:79:in `call', lib/gitlab/middleware/release_env.rb:13:in `call'

Exception message:

Integer out of bounds: 9548053967 @ group.dependencyProxyTotalSizeInBytes (Group.dependencyProxyTotalSizeInBytes). Consider using ID or GraphQL::Types::BigInt instead.

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 Sam Hewitt