GraphQL Group type add field dependencyProxyTotalSizeBytes
What does this MR do and why?
This MR deprecates the dependencyProxyTotalSizeInBytes
field and introduces the dependencyProxyTotalSizeBytes
field. The new field is of type BigInt
, which returns a string instead of a number.
The dependencyProxyTotalSizeInBytes
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.
When the customer has a total size larger than 2147483647
, an IntegerEncodingError
is thrown with Integer out of bounds
.
The new field will be able to handle the maximum limit of the PostgreSQL bigint
type.
Front-end changes will be implemented in later milestones, as they rely on the introduction of the new field.
Deprecation issue: #414236 (closed)
Screenshots or screen recordings
Screenshots are required for UI changes, and strongly recommended for all other merge requests.
How to set up and validate locally
- Create Group
- Cache image to dependency proxy for Group
- Change the size in
dependency_proxy_manifests
for the Group to > 2147483648 - Navigate to the Group's Usage Quota > Storage page
The 500
error from the getDependencyProxyTotalSizeQuery
should cause a UI error and some UI elements don't load
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.