]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: fix bucket objects and size calculations 41648/head
authorAvan Thakkar <athakkar@localhost.localdomain>
Tue, 1 Jun 2021 14:21:16 +0000 (19:51 +0530)
committerAvan Thakkar <athakkar@localhost.localdomain>
Wed, 2 Jun 2021 13:09:48 +0000 (18:39 +0530)
Fixes: https://tracker.ceph.com/issues/51035
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit 9f5ef98d9c88a91b80e622f16f7061eddff79b2c)

src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-bucket-list/rgw-bucket-list.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-bucket-list/rgw-bucket-list.component.ts

index 4ecb6ae1a3ea52493f64f07a6dc815df600e1ef1..90182b42614756242effe80eb437efb324a0030d 100644 (file)
@@ -218,7 +218,7 @@ describe('RgwBucketListComponent', () => {
               size_actual: 4,
               num_objects: 2
             },
-            'rgw.another': {
+            'rgw.none': {
               size_actual: 6,
               num_objects: 6
             }
@@ -238,17 +238,17 @@ describe('RgwBucketListComponent', () => {
         owner: 'testid',
         usage: {
           'rgw.main': { size_actual: 4, num_objects: 2 },
-          'rgw.another': { size_actual: 6, num_objects: 6 }
+          'rgw.none': { size_actual: 6, num_objects: 6 }
         },
         bucket_quota: {
           max_size: 20,
           max_objects: 10,
           enabled: true
         },
-        bucket_size: 10,
-        num_objects: 8,
-        size_usage: 0.5,
-        object_usage: 0.8
+        bucket_size: 4,
+        num_objects: 2,
+        size_usage: 0.2,
+        object_usage: 0.2
       }
     ]);
   });
index f16a98b48c9384239686c40b0fad95d3460e7b0e..50a33f579fbfe8338dd8752370b77b191cc4cbc6 100644 (file)
@@ -117,20 +117,18 @@ export class RgwBucketListComponent implements OnInit {
 
   transformBucketData() {
     _.forEach(this.buckets, (bucketKey) => {
-      const usageList = bucketKey['usage'];
       const maxBucketSize = bucketKey['bucket_quota']['max_size'];
       const maxBucketObjects = bucketKey['bucket_quota']['max_objects'];
-      let totalBucketSize = 0;
-      let numOfObjects = 0;
-      _.forEach(usageList, (usageKey) => {
-        totalBucketSize = totalBucketSize + usageKey.size_actual;
-        numOfObjects = numOfObjects + usageKey.num_objects;
-      });
-      bucketKey['bucket_size'] = totalBucketSize;
-      bucketKey['num_objects'] = numOfObjects;
-      bucketKey['size_usage'] = maxBucketSize > 0 ? totalBucketSize / maxBucketSize : undefined;
+      bucketKey['bucket_size'] = 0;
+      bucketKey['num_objects'] = 0;
+      if (!_.isEmpty(bucketKey['usage'])) {
+        bucketKey['bucket_size'] = bucketKey['usage']['rgw.main']['size_actual'];
+        bucketKey['num_objects'] = bucketKey['usage']['rgw.main']['num_objects'];
+      }
+      bucketKey['size_usage'] =
+        maxBucketSize > 0 ? bucketKey['bucket_size'] / maxBucketSize : undefined;
       bucketKey['object_usage'] =
-        maxBucketObjects > 0 ? numOfObjects / maxBucketObjects : undefined;
+        maxBucketObjects > 0 ? bucketKey['num_objects'] / maxBucketObjects : undefined;
     });
   }