Seed zero-value metrics for empty buckets in count-items (1.17 backport) - #406
Conversation
count-items only produced metric documents for buckets that hold objects. An empty bucket yielded no document in __infostore, which makes Scuba's deep health check fail and disables the quota service cluster-wide (ARTESCA-17063). Seed zero-value bucket, account and location entries in getObjectMDStats() when a bucket scan yields no objects. The bucket key is derived from the __usersbucket creation date, exactly like populated buckets (S3UTILS-131), so the seeded document matches the key quota lookups use; if that date is missing the bucket is skipped with a warning rather than written under an unmatchable key. Issue: S3UTILS-224 (cherry picked from commit deb030e)
Hello delthas,My role is to assist you with the merge of this Available options
Available commands
Status report is not available. |
Request integration branchesWaiting for integration branch creation to be requested by the user. To request integration branches, please comment on this pull request with the following command: Alternatively, the |
|
/create_integration_branches |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## development/1.17 #406 +/- ##
====================================================
+ Coverage 45.03% 45.28% +0.24%
====================================================
Files 88 88
Lines 6466 6486 +20
Branches 1355 1360 +5
====================================================
+ Hits 2912 2937 +25
+ Misses 3508 3503 -5
Partials 46 46 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Waiting for approvalThe following approvals are needed before I can proceed with the merge:
The following options are set: create_integration_branches |
|
/approve |
|
I have successfully merged the changeset of this pull request
The following branches have NOT changed:
This pull request did not target the following hotfix branch(es) so they
Please check the status of the associated issue S3UTILS-224. Goodbye delthas. The following options are set: approve, create_integration_branches |
|
/release |
Backport of the S3UTILS-224 / #378 fix to
development/1.17, cherry-picked byte-for-byte fromdevelopment/1(deb030e) so the GitWaterFlow cascade through 1.18 and 1 auto-resolves — verified withgit merge-tree: zero conflicts against bothdevelopment/1.18anddevelopment/1for the fix commit.count-items only produced metric documents for buckets that hold objects. An empty bucket yielded no document in
__infostore, which makes Scuba's deep health check fail and disables the quota service cluster-wide (ARTESCA-17063), and leaves the Veeam SOSAPIcapacity.xmlstuck atAvailable=0for empty repositories (RD-2109, reproduced at a customer on ARTESCA 4.2.2).Seed zero-value bucket, account and location entries in
getObjectMDStats()when a bucket scan yields no objects. The bucket key is derived from the__usersbucketcreation date, exactly like populated buckets (S3UTILS-131), so the seeded document matches the key quota lookups use; if that date is missing the bucket is skipped with a warning rather than written under an unmatchable key.Also bumps package.json to 1.17.14 — expect the usual cascade conflict on the version line at each higher development line.
Issue: S3UTILS-224