This is an automated email from the ASF dual-hosted git repository.

sumitagrawal pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/master by this push:
     new 59a7b6592c HDDS-8415. Recon UI:OM DB Insights Changes (#4940)
59a7b6592c is described below

commit 59a7b6592c874caf40eb70664d3666722cd88ed7
Author: smitajoshi12 <[email protected]>
AuthorDate: Fri Jun 30 17:23:50 2023 +0530

    HDDS-8415. Recon UI:OM DB Insights Changes (#4940)
---
 .../webapps/recon/ozone-recon-web/api/db.json      | 3528 +++++++++++++++++++-
 .../webapps/recon/ozone-recon-web/api/routes.json  |   41 +-
 .../src/components/navBar/navBar.less              |    8 +
 .../src/components/navBar/navBar.tsx               |   22 +-
 .../src/constants/breadcrumbs.constants.tsx        |    3 +-
 .../webapps/recon/ozone-recon-web/src/routes.tsx   |    6 +
 .../overview.less => insights/om/om.less}          |   19 +-
 .../ozone-recon-web/src/views/insights/om/om.tsx   | 1042 ++++++
 .../src/views/overview/overview.less               |    6 +
 .../src/views/overview/overview.tsx                |   55 +-
 10 files changed, 4589 insertions(+), 141 deletions(-)

diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/api/db.json
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/api/db.json
index 7d73479a35..d821e1377f 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/api/db.json
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/api/db.json
@@ -983,6 +983,234 @@
   "keys": {
     "totalCount": 534,
     "keys": [
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-0-77505",
+        "DataSize": 10240,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206297511460860
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:18:43.688Z",
+        "ModificationTime": "2019-11-26T21:18:46.062Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-21-64511",
+        "DataSize": 5692407,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206299949795380
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:19:20.855Z",
+        "ModificationTime": "2019-11-26T21:19:20.991Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-22-69104",
+        "DataSize": 189407,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206300033091740
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:19:22.126Z",
+        "ModificationTime": "2019-11-26T21:19:22.251Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-0-77505",
+        "DataSize": 10240,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206297511460860
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:18:43.688Z",
+        "ModificationTime": "2019-11-26T21:18:46.062Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-21-64511",
+        "DataSize": 5692407,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206299949795380
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:19:20.855Z",
+        "ModificationTime": "2019-11-26T21:19:20.991Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-22-69104",
+        "DataSize": 189407,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206300033091740
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:19:22.126Z",
+        "ModificationTime": "2019-11-26T21:19:22.251Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-0-77505",
+        "DataSize": 10240,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206297511460860
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:18:43.688Z",
+        "ModificationTime": "2019-11-26T21:18:46.062Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-21-64511",
+        "DataSize": 5692407,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206299949795380
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:19:20.855Z",
+        "ModificationTime": "2019-11-26T21:19:20.991Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-22-69104",
+        "DataSize": 189407,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206300033091740
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:19:22.126Z",
+        "ModificationTime": "2019-11-26T21:19:22.251Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-0-77505",
+        "DataSize": 10240,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206297511460860
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:18:43.688Z",
+        "ModificationTime": "2019-11-26T21:18:46.062Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-21-64511",
+        "DataSize": 5692407,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206299949795380
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:19:20.855Z",
+        "ModificationTime": "2019-11-26T21:19:20.991Z"
+      },
+      {
+        "Volume": "vol-0-20448",
+        "Bucket": "bucket-0-12811",
+        "Key": "key-22-69104",
+        "DataSize": 189407,
+        "Versions": [
+          0
+        ],
+        "Blocks": {
+          "0": [
+            {
+              "containerID": 1,
+              "localID": 103206300033091740
+            }
+          ]
+        },
+        "CreationTime": "2019-11-26T21:19:22.126Z",
+        "ModificationTime": "2019-11-26T21:19:22.251Z"
+      },
       {
         "Volume": "vol-0-20448",
         "Bucket": "bucket-0-12811",
@@ -1285,95 +1513,47 @@
     "sizeDirectKey": 0
   },
   "metadata": {
-  "path": "",
-  "type": "DUMMY_TYPE",
-  "countStats": {
-    "numVolume": 100,
-    "numBucket": 200,
-    "numDir": 400,
-    "numKey": 80
-  },
-  "objectInfo": {
-    "versioningEnabled": false,
-    "metadata": {
-      
+    "path": "",
+    "type": "DUMMY_TYPE",
+    "countStats": {
+      "numVolume": 100,
+      "numBucket": 200,
+      "numDir": 400,
+      "numKey": 80
     },
-    "name": "fso-bucket",
-    "fileName": "file1",
-    "file": false,
-    "quotaInBytes": 1000000000,
-    "quotaInNamespace": 2000000000,
-    "usedNamespace": 10,
-    "creationTime": 1673415921920,
-    "modificationTime": 1673415921920,
-    "acls": [
-      {
-        "type": "USER",
-        "name": "hadoop",
-        "aclScope": "ACCESS",
-        "aclList": [
-          "ALL"
-        ]
-      },
-      {
-        "type": "GROUP",
-        "name": "hadoop",
-        "aclScope": "ACCESS",
-        "aclList": [
-          "ALL"
-        ]
-      }
-    ],
-    "keyLocationVersions": [
-      {
-        "version": 0,
-        "locationList": [
-          {
-            "blockID": {
-              "containerBlockID": {
-                "containerID": 1,
-                "localID": 111677748019200007
-              },
-              "blockCommitSequenceId": 18,
-              "containerID": 1,
-              "localID": 111677748019200007
-            },
-            "length": 3879,
-            "offset": 0,
-            "token": null,
-            "createVersion": 0,
-            "pipeline": null,
-            "partNumber": 0,
-            "containerID": 1,
-            "localID": 111677748019200007,
-            "blockCommitSequenceId": 18
-          }
-        ],
-        "multipartKey": false,
-        "blocksLatestVersionOnly": [
-          {
-            "blockID": {
-              "containerBlockID": {
-                "containerID": 1,
-                "localID": 111677748019200007
-              },
-              "blockCommitSequenceId": 18,
-              "containerID": 1,
-              "localID": 111677748019200007
-            },
-            "length": 3879,
-            "offset": 0,
-            "token": null,
-            "createVersion": 0,
-            "pipeline": null,
-            "partNumber": 0,
-            "containerID": 1,
-            "localID": 111677748019200007,
-            "blockCommitSequenceId": 18
-          }
-        ],
-        "locationLists": [
-          [
+    "objectInfo": {
+      "versioningEnabled": false,
+      "metadata": {},
+      "name": "fso-bucket",
+      "fileName": "file1",
+      "file": false,
+      "quotaInBytes": 1000000000,
+      "quotaInNamespace": 2000000000,
+      "usedNamespace": 10,
+      "creationTime": 1673415921920,
+      "modificationTime": 1673415921920,
+      "acls": [
+        {
+          "type": "USER",
+          "name": "hadoop",
+          "aclScope": "ACCESS",
+          "aclList": [
+            "ALL"
+          ]
+        },
+        {
+          "type": "GROUP",
+          "name": "hadoop",
+          "aclScope": "ACCESS",
+          "aclList": [
+            "ALL"
+          ]
+        }
+      ],
+      "keyLocationVersions": [
+        {
+          "version": 0,
+          "locationList": [
             {
               "blockID": {
                 "containerBlockID": {
@@ -1394,32 +1574,78 @@
               "localID": 111677748019200007,
               "blockCommitSequenceId": 18
             }
-          ]
-        ],
-        "locationListCount": 1
-      }
-    ],
-    "volumeName": "volume1",
-    "bucketName": "fso-bucket",
-    "keyName": "file1",
-    "dataSize": 18513,
-    "storageType": "DISK",
-    "versioning": false,
-    "usedBytes": null,
-    "encryptionInfo": null,
-    "replicationConfig": {
-      "replicationFactor": "THREE",
-      "requiredNodes": 3,
-      "replicationType": "RATIS"
-    },
-    "encInfo": null,
-    "sourceVolume": null,
-    "sourceBucket": null,
-    "bucketLayout": "FILE_SYSTEM_OPTIMIZED",
-    "owner": "hadoop",
-    "volume": "vol1"
-  },
-  "status": "OK"
+          ],
+          "multipartKey": false,
+          "blocksLatestVersionOnly": [
+            {
+              "blockID": {
+                "containerBlockID": {
+                  "containerID": 1,
+                  "localID": 111677748019200007
+                },
+                "blockCommitSequenceId": 18,
+                "containerID": 1,
+                "localID": 111677748019200007
+              },
+              "length": 3879,
+              "offset": 0,
+              "token": null,
+              "createVersion": 0,
+              "pipeline": null,
+              "partNumber": 0,
+              "containerID": 1,
+              "localID": 111677748019200007,
+              "blockCommitSequenceId": 18
+            }
+          ],
+          "locationLists": [
+            [
+              {
+                "blockID": {
+                  "containerBlockID": {
+                    "containerID": 1,
+                    "localID": 111677748019200007
+                  },
+                  "blockCommitSequenceId": 18,
+                  "containerID": 1,
+                  "localID": 111677748019200007
+                },
+                "length": 3879,
+                "offset": 0,
+                "token": null,
+                "createVersion": 0,
+                "pipeline": null,
+                "partNumber": 0,
+                "containerID": 1,
+                "localID": 111677748019200007,
+                "blockCommitSequenceId": 18
+              }
+            ]
+          ],
+          "locationListCount": 1
+        }
+      ],
+      "volumeName": "volume1",
+      "bucketName": "fso-bucket",
+      "keyName": "file1",
+      "dataSize": 18513,
+      "storageType": "DISK",
+      "versioning": false,
+      "usedBytes": null,
+      "encryptionInfo": null,
+      "replicationConfig": {
+        "replicationFactor": "THREE",
+        "requiredNodes": 3,
+        "replicationType": "RATIS"
+      },
+      "encInfo": null,
+      "sourceVolume": null,
+      "sourceBucket": null,
+      "bucketLayout": "FILE_SYSTEM_OPTIMIZED",
+      "owner": "hadoop",
+      "volume": "vol1"
+    },
+    "status": "OK"
   },
   "quota": {
     "allowed": 1000000000,
@@ -1603,7 +1829,7 @@
       "lastUpdatedSeqNumber": 0
     }
   ],
-  "unhealthyContainers":{
+  "unhealthyContainers": {
     "missingCount": 3,
     "underReplicatedCount": 2,
     "overReplicatedCount": 2,
@@ -2413,7 +2639,7 @@
     "minAccessCount": 1,
     "maxAccessCount": 39202
   },
-  "keyHeatmap": {
+  "keyHeatmap":  {
     "label": "root",
     "children": [
       {
@@ -3182,5 +3408,3075 @@
   },
   "disabledFeatures": [
        "FLAG1"
+  ],
+
+  "keysOpenSummary": {
+    "keysSummary": {
+      "totalUnreplicatedDataSize": 1000,
+      "totalReplicatedDataSize": 30000000,
+      "totalOpenKeys": 10
+    },
+    "lastKey": "",
+    "replicatedDataSize": 0,
+    "unreplicatedDataSize": 0,
+    "status": "OK"
+   },
+  "keysdeletePendingSummary":{
+    "keysSummary": {
+      "totalUnreplicatedDataSize": 29291,
+      "totalReplicatedDataSize": 87873,
+      "totalDeletedKeys": 3
+    },
+    "lastKey": "/s3v/fso-bucket/dira/dira13/key3/-9223372036854762239",
+    "replicatedDataSize": 87873,
+    "unreplicatedDataSize": 29291,
+    "status": "OK"
+  },
+  "omMismatch":{
+      "lastKey":11,
+      "containerDiscrepancyInfo": [
+      {
+        "containerId": 1,
+        "numberOfKeys": 1,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          },
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-613724nn"
+            },
+            
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 2,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 3,
+        "numberOfKeys": 3,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 4,
+        "numberOfKeys": 4,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 5,
+        "numberOfKeys": 5,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 6,
+        "numberOfKeys": 6,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 7,
+        "numberOfKeys": 7,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 8,
+        "numberOfKeys": 8,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 9,
+        "numberOfKeys": 9,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      },
+      {
+        "containerId": 10,
+        "numberOfKeys": 10,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ],
+        "existsAt": "SCM"
+      }
+    ]
+  },
+  "omMismatch1":{
+    "lastKey":21,
+    "containerDiscrepancyInfo": [
+    {
+      "containerId": 11,
+      "numberOfKeys": 1,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        },
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-613724nn"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 12,
+      "numberOfKeys": 2,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 13,
+      "numberOfKeys": 3,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 14,
+      "numberOfKeys": 4,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 15,
+      "numberOfKeys": 5,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 16,
+      "numberOfKeys": 6,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 17,
+      "numberOfKeys": 7,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 18,
+      "numberOfKeys": 8,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 19,
+      "numberOfKeys": 9,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 20,
+      "numberOfKeys": 10,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 21,
+      "numberOfKeys": 11,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    },
+    {
+      "containerId": 22,
+      "numberOfKeys": 12,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "SCM"
+    }
+  ]
+  },
+  "omMismatch2":{
+    "lastKey": null,
+    "containerDiscrepancyInfo": []
+  },
+  "scmMismatch":{
+    "lastKey":11,
+    "containerDiscrepancyInfo": [
+    {
+      "containerId": 1,
+      "numberOfKeys": 1,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        },
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-613724nn"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 2,
+      "numberOfKeys": 2,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 3,
+      "numberOfKeys": 3,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 4,
+      "numberOfKeys": 4,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 5,
+      "numberOfKeys": 5,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 6,
+      "numberOfKeys": 6,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 7,
+      "numberOfKeys": 7,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 8,
+      "numberOfKeys": 8,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 9,
+      "numberOfKeys": 9,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 10,
+      "numberOfKeys": 10,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    }
   ]
+  },
+  "scmMismatch1":{
+    "lastKey":21,
+    "containerDiscrepancyInfo": [
+    {
+      "containerId": 11,
+      "numberOfKeys": 1,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        },
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-613724nn"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 12,
+      "numberOfKeys": 2,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 13,
+      "numberOfKeys": 3,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 14,
+      "numberOfKeys": 4,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 15,
+      "numberOfKeys": 5,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 16,
+      "numberOfKeys": 6,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 17,
+      "numberOfKeys": 7,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 18,
+      "numberOfKeys": 8,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 19,
+      "numberOfKeys": 9,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 20,
+      "numberOfKeys": 10,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    }
+  ]
+  },
+  "scmMismatch2":{
+    "lastKey":31,
+    "containerDiscrepancyInfo": [
+    {
+      "containerId": 21,
+      "numberOfKeys": 1,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        },
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-613724nn"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 22,
+      "numberOfKeys": 2,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 23,
+      "numberOfKeys": 3,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 24,
+      "numberOfKeys": 4,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 25,
+      "numberOfKeys": 5,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 26,
+      "numberOfKeys": 6,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 27,
+      "numberOfKeys": 7,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 28,
+      "numberOfKeys": 8,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 29,
+      "numberOfKeys": 9,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 30,
+      "numberOfKeys": 10,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    }
+  ]
+  },
+  "scmMismatch3":{
+    "lastKey":41,
+    "containerDiscrepancyInfo": [
+    {
+      "containerId": 31,
+      "numberOfKeys": 1,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        },
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-613724nn"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 32,
+      "numberOfKeys": 2,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 33,
+      "numberOfKeys": 3,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 34,
+      "numberOfKeys": 4,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 35,
+      "numberOfKeys": 5,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 36,
+      "numberOfKeys": 6,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 37,
+      "numberOfKeys": 7,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 38,
+      "numberOfKeys": 8,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 39,
+      "numberOfKeys": 9,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 40,
+      "numberOfKeys": 10,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    }
+  ]
+  },
+  "scmMismatch4":{
+    "lastKey":51,
+    "containerDiscrepancyInfo": [
+    {
+      "containerId": 41,
+      "numberOfKeys": 1,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        },
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-613724nn"
+          },
+          
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 42,
+      "numberOfKeys": 2,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 43,
+      "numberOfKeys": 3,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 44,
+      "numberOfKeys": 4,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 45,
+      "numberOfKeys": 5,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 46,
+      "numberOfKeys": 6,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 47,
+      "numberOfKeys": 7,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 48,
+      "numberOfKeys": 8,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 49,
+      "numberOfKeys": 9,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    },
+    {
+      "containerId": 50,
+      "numberOfKeys": 10,
+      "pipelines": [
+        {
+          "id": {
+            "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+          },
+          "replicationConfig": {
+            "replicationFactor": "ONE",
+            "requiredNodes": 1,
+            "replicationType": "RATIS"
+          },
+          "healthy": true
+        }
+      ],
+      "existsAt": "OM"
+    }
+  ]
+  },
+  "scmMismatch5":{
+    "lastKey": null,
+    "containerDiscrepancyInfo": []
+  },
+  "nonFSO": {
+    "lastKey": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/1105696238501917",
+    "keysSummary": {
+      "totalUnreplicatedDataSize": 1000,
+      "totalReplicatedDataSize": 3000,
+      "totalOpenKeys": 0
+    },
+    "nonFSO": [
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/01/110569623850191713",
+        "path": "nonfso 1",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+      }
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2439/110569623850191713",
+        "path": "nonfso 2",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+      }
+      }
+    ],
+    "status": "OK"
+  },
+  "nonFSO1": {
+    "lastKey": 
"1/-9223372036854775552/-9223372036854775040/-9223372036852420095/2421/1105696238501917",
+    "nonFSO": [
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2440/110569623850191713",
+        "path": "nonfso 11",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+      }
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2441/110569623850191713",
+        "path": "nonfso 12",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+      }
+      }
+    ],
+    "status": "OK"
+  },
+  "nonFSO2": {
+    "lastKey": "",
+    "nonFSO": []
+  },
+  "fso": {
+    "lastKey": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/110569623850191713",
+    "fso": [
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2401/110569623850191713",
+        "path": "1",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2402/110569623850191713",
+        "path": "2",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2403/110569623850191713",
+        "path": "3",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2404/110569623850191713",
+        "path": "4",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2405/110569623850191713",
+        "path": "5",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2406/110569623850191713",
+        "path": "6",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2407/110569623850191713",
+        "path": "7",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2408/110569623850191713",
+        "path": "8",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2409/110569623850191713",
+        "path": "9",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      
+      },
+      {
+        "key": "fso 10",
+        "path": "10",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      
+      }
+     ],
+    "status": "OK"
+  },
+  "fso1": {
+    "lastKey": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2421/110569623850191713",
+    "fso": [
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/110569623850191713",
+        "path": "11",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 12",
+        "path": "12",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 13",
+        "path": "13",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 14",
+        "path": "14",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 15",
+        "path": "15",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 16 key",
+        "path": "16",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 17 key",
+        "path": "17",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 18 key",
+        "path": "18",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 19 key",
+        "path": "19",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 20 key",
+        "path": "20",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 21",
+        "path": "21",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 22",
+        "path": "22",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 23",
+        "path": "23",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 24",
+        "path": "24",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 25",
+        "path": "25",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 26",
+        "path": "26",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 27",
+        "path": "27",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 28",
+        "path": "28",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 29",
+        "path": "29",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 30",
+        "path": "30",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 31",
+        "path": "31",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 32",
+        "path": "32",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      },
+      {
+        "key": "fso 33",
+        "path": "33",
+        "inStateSince": 1686156887186,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+        }
+      }
+    ],
+    "status": "OK"
+  },
+  "fso2": {
+    "lastKey": "",
+    "fso": []
+  },
+  "keydeletePending":{
+    "lastKey": "/volume/bucket1/rcmeevblsf/106/-9223372036843950335",
+    "keysSummary": {
+      "totalUnreplicatedDataSize": 29291,
+      "totalReplicatedDataSize": 87873,
+      "totalDeletedKeys": 3
+    },
+    "replicatedDataSize": 300000000,
+    "unreplicatedDataSize": 100000000,
+    "deletedKeyInfo": [
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036844470271,
+            "updateID": 40429,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List1key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189663661,
+            "modificationTime": 1687189672598,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List1File1",
+            "file": false,
+            "path": "-9223372036844472575/0",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/0', dataSize='10000000', creationTime='1687189663661', 
objectID='-9223372036844470271', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          },
+          {
+            "objectID": -9223372036844470271,
+            "updateID": 40429,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List1key1",
+            "dataSize": 20000000,
+            "creationTime": 1687189663661,
+            "modificationTime": 1687189672598,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List1File1",
+            "file": false,
+            "path": "-9223372036844472575/0",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/0', dataSize='10000000', creationTime='1687189663661', 
objectID='-9223372036844470271', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          },
+          {
+            "objectID": -9223372036844470271,
+            "updateID": 40429,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List1key1",
+            "dataSize": 30000000,
+            "creationTime": 1687189663661,
+            "modificationTime": 1687189672598,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List1File1",
+            "file": false,
+            "path": "-9223372036844472575/0",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/0', dataSize='10000000', creationTime='1687189663661', 
objectID='-9223372036844470271', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            
+            "objectID": -9223372036844470015,
+            "updateID": 40407,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List2Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189663664,
+            "modificationTime": 1687189671884,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List2File2",
+            "file": false,
+            "path": "-9223372036844472575/1",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/1', dataSize='10000000', creationTime='1687189663664', 
objectID='-9223372036844470015', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036844432639,
+            "updateID": 40601,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List3Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189671823,
+            "modificationTime": 1687189676084,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List3File1",
+            "file": false,
+            "path": "-9223372036844472575/10",
+            "hsync": false,
+            "replicatedSize": 30000000
+          },
+          {
+            "objectID": -9223372036844432639,
+            "updateID": 40601,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List3Key1",
+            "dataSize": 20000000,
+            "creationTime": 1687189671823,
+            "modificationTime": 1687189676084,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List3File1",
+            "file": false,
+            "path": "-9223372036844472575/10",
+            "hsync": false,
+            "replicatedSize": 30000000
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036843970815,
+            "updateID": 42403,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List4Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189713476,
+            "modificationTime": 1687189717756,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List4File3",
+            "file": false,
+            "path": "-9223372036844472575/100"
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036843964159,
+            "updateID": 42443,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List5Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189714437,
+            "modificationTime": 1687189719458,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List5File1",
+            "file": false,
+            "path": "-9223372036844472575/101"
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036843961087,
+            "updateID": 42450,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List6Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189714558,
+            "modificationTime": 1687189719533,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List6File1",
+            "file": false,
+            "path": "-9223372036844472575/102",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/102', dataSize='10000000', creationTime='1687189714558', 
objectID='-9223372036843961087', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036843959807,
+            "updateID": 42449,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List7Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189714594,
+            "modificationTime": 1687189719533,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List7File1",
+            "file": false,
+            "path": "-9223372036844472575/103",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/103', dataSize='10000000', creationTime='1687189714594', 
objectID='-9223372036843959807', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036843953919,
+            "updateID": 42467,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List8Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189715040,
+            "modificationTime": 1687189720085,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List8File1",
+            "file": false,
+            "path": "-9223372036844472575/104",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/104', dataSize='10000000', creationTime='1687189715040', 
objectID='-9223372036843953919', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036843951359,
+            "updateID": 42483,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List9Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189715391,
+            "modificationTime": 1687189720373,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List9File9",
+            "file": false,
+            "path": "-9223372036844472575/105",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/105', dataSize='10000000', creationTime='1687189715391', 
objectID='-9223372036843951359', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          }
+        ]
+      },
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": -9223372036843950335,
+            "updateID": 42478,
+            "parentObjectID": -9223372036844472575,
+            "volumeName": "volume",
+            "bucketName": "bucket1",
+            "keyName": "List10Key1",
+            "dataSize": 10000000,
+            "creationTime": 1687189715413,
+            "modificationTime": 1687189720247,
+            "replicationConfig": {
+              "replicationFactor": "THREE",
+              "requiredNodes": 3,
+              "replicationType": "RATIS"
+            },
+            "fileChecksum": null,
+            "fileName": "List10File1",
+            "file": false,
+            "path": "-9223372036844472575/106",
+            "hsync": false,
+            "replicatedSize": 30000000,
+            "fileEncryptionInfo": null,
+            "objectInfo": "OMKeyInfo{volume='volume', bucket='bucket1', 
key='rcmeevblsf/106', dataSize='10000000', creationTime='1687189715413', 
objectID='-9223372036843950335', parentID='-9223372036844472575', 
replication='RATIS/THREE', fileChecksum='null}",
+            "updateIDset": true
+          }
+        ]
+      }
+    ],
+    "status": "OK"
+  },
+
+  "keydeletePending1": {
+    
"lastKey":"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2421/110569623850191",
+    "replicatedTotal": -1530804718628866300,
+    "unreplicatedTotal": -1530804718628866300,
+    "deletedKeyInfo": [
+      {
+        "omKeyInfoList": [
+          {
+            "objectID": 0,
+            "updateID": 0,
+            "parentObjectID": 0,
+            "volumeName": "sampleVol",
+            "bucketName": "bucketOne",
+            "keyName": "key22",
+            "dataSize": 1000,
+            "keyLocationVersions": [],
+            "creationTime": 0,
+            "modificationTime": 0,
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "STANDALONE"
+            },
+            "fileChecksum": null,
+            "fileName": "file_key22",
+            "acls": [],
+            "path": "0/key_one",
+            "file": false,
+            "latestVersionLocations": null,
+            "replicatedSize": 120000000,
+            "fileEncryptionInfo": null,
+            "updateIDset": false
+          },
+          {
+            "metadata": {},
+            "objectID": 0,
+            "updateID": 0,
+            "parentObjectID": 0,
+            "volumeName": "sampleVol",
+            "bucketName": "bucketOne",
+            "keyName": "key22",
+            "dataSize": 2000,
+            "keyLocationVersions": [],
+            "creationTime": 0,
+            "modificationTime": 0,
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "STANDALONE"
+            },
+            "fileChecksum": null,
+            "fileName": "file_key22",
+            "acls": [],
+            "path": "0/key_one",
+            "file": false,
+            "latestVersionLocations": null,
+            "replicatedSize": -1530804718628866300,
+            "fileEncryptionInfo": null,
+            "updateIDset": false
+          }
+        ]
+      }
+    ],
+    "status": "OK"
+  },
+  "keydeletePending2": {
+    "lastKey":"31",
+    "replicatedTotal": -1530804718628866300,
+    "unreplicatedTotal": -1530804718628866300,
+    "deletedKeyInfo": [
+      {
+        "omKeyInfoList": [
+          {
+            "metadata": {},
+            "objectID": 0,
+            "updateID": 0,
+            "parentObjectID": 0,
+            "volumeName": "sampleVol",
+            "bucketName": "bucketOne",
+            "keyName": "key_31",
+            "dataSize": -1530804718628866300,
+            "keyLocationVersions": [],
+            "creationTime": 0,
+            "modificationTime": 0,
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "STANDALONE"
+            },
+            "fileChecksum": null,
+            "fileName": "key_one",
+            "acls": [],
+            "path": "0/key_one",
+            "file": false,
+            "latestVersionLocations": null,
+            "replicatedSize": -1530804718628866300,
+            "fileEncryptionInfo": null,
+            "updateIDset": false
+          },
+          {
+            "metadata": {},
+            "objectID": 0,
+            "updateID": 0,
+            "parentObjectID": 0,
+            "volumeName": "sampleVol",
+            "bucketName": "bucketOne",
+            "keyName": "key_32",
+            "dataSize": -1530804718628866300,
+            "keyLocationVersions": [],
+            "creationTime": 0,
+            "modificationTime": 0,
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "STANDALONE"
+            },
+            "fileChecksum": null,
+            "fileName": "key_two",
+            "acls": [],
+            "path": "0/key_two",
+            "file": false,
+            "latestVersionLocations": null,
+            "replicatedSize": -1530804718628866300,
+            "fileEncryptionInfo": null,
+            "updateIDset": false
+          },
+          {
+            "metadata": {},
+            "objectID": 0,
+            "updateID": 0,
+            "parentObjectID": 0,
+            "volumeName": "sampleVol",
+            "bucketName": "bucketOne",
+            "keyName": "key_33",
+            "dataSize": -1530804718628866300,
+            "keyLocationVersions": [],
+            "creationTime": 0,
+            "modificationTime": 0,
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "STANDALONE"
+            },
+            "fileChecksum": null,
+            "fileName": "key_one",
+            "acls": [],
+            "path": "0/key_one",
+            "file": false,
+            "latestVersionLocations": null,
+            "replicatedSize": -1530804718628866300,
+            "fileEncryptionInfo": null,
+            "updateIDset": false
+          },
+          {
+            "metadata": {},
+            "objectID": 0,
+            "updateID": 0,
+            "parentObjectID": 0,
+            "volumeName": "sampleVol",
+            "bucketName": "bucketOne",
+            "keyName": "key_34",
+            "dataSize": -1530804718628866300,
+            "keyLocationVersions": [],
+            "creationTime": 0,
+            "modificationTime": 0,
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "STANDALONE"
+            },
+            "fileChecksum": null,
+            "fileName": "key_two",
+            "acls": [],
+            "path": "0/key_two",
+            "file": false,
+            "latestVersionLocations": null,
+            "replicatedSize": -1530804718628866300,
+            "fileEncryptionInfo": null,
+            "updateIDset": false
+          }
+        ]
+      }
+    ],
+    "status": "OK"
+  },
+  "keydeletePending3": {
+    "lastKey":"",
+    "deletedKeyInfo": []
+  },
+  "deleted": {
+    "lastKey": "11",
+    "containers": [
+      {
+        "containerId": 1,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 2,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 3,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 4,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 5,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 6,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 7,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 8,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 9,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 10,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      }
+    ]
+  },
+  "deleted1": {
+    "lastKey": "21",
+    "containers": [
+      {
+        "containerId": 11,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 12,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 13,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 14,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 15,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 16,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 17,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 18,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 19,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 20,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      }
+    ]
+  },
+  "deleted2": {
+    "lastKey": "31",
+    "containers": [
+      {
+        "containerId": 21,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 22,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 23,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 24,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 25,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 26,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 27,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 28,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 29,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 30,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      }
+    ]
+  },
+  "deleted3": {
+    "lastKey": "41",
+    "containers": [
+      {
+        "containerId": 31,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      },
+      {
+        "containerId": 32,
+        "numberOfKeys": 2,
+        "pipelines": [
+          {
+            "id": {
+              "id": "1202e6bb-b7c1-4a85-8067-61374b069adb"
+            },
+            "replicationConfig": {
+              "replicationFactor": "ONE",
+              "requiredNodes": 1,
+              "replicationType": "RATIS"
+            },
+            "healthy": true
+          }
+        ]
+      }
+    ]
+  },
+  "deleted4": {
+    "lastKey": null,
+    "containers": []
+  }
 }
\ No newline at end of file
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/api/routes.json
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/api/routes.json
index cc2a1b66cf..d7efeea053 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/api/routes.json
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/api/routes.json
@@ -28,5 +28,44 @@
   "/heatmap/readaccess?startDate=*&path=*&entityType=bucket": "/bucketHeatmap",
   "/heatmap/readaccess?startDate=*&path=*&entityType=key": "/keyHeatmap",
   "/heatmap/readaccess?startDate=*&path=*&entityType=volume": "/heatmap",
-  "/features/disabledFeatures": "/disabledFeatures"
+  "/features/disabledFeatures": "/disabledFeatures",
+  "/keys/open?limit=0": "/keysOpenSummary",
+  "/keys/deletePending?limit=1": "/keysdeletePendingSummary",
+
+  "/containers/mismatch?limit=*&prevKey=11&missingIn=OM" : "/omMismatch1",
+  "/containers/mismatch?limit=*&prevKey=21&missingIn=OM" : "/omMismatch2",
+  "/containers/mismatch?limit=*&prevKey=31&missingIn=OM" : "/omMismatch3",
+  "/containers/mismatch?limit=*&prevKey=41&missingIn=OM" : "/omMismatch4",
+
+  "/containers/mismatch?limit=*&prevKey=*&missingIn=OM" : "/omMismatch",
+
+  "/containers/mismatch?limit=*&prevKey=11&missingIn=SCM" : "/scmMismatch1",
+  "/containers/mismatch?limit=*&prevKey=21&missingIn=SCM" : "/scmMismatch2",
+  "/containers/mismatch?limit=*&prevKey=31&missingIn=SCM" : "/scmMismatch3",
+  "/containers/mismatch?limit=*&prevKey=41&missingIn=SCM" : "/scmMismatch4",
+  "/containers/mismatch?limit=*&prevKey=51&missingIn=SCM" : "/scmMismatch5",
+
+  "/containers/mismatch?limit=*&prevKey=*&missingIn=SCM" : "/scmMismatch",
+
+  "/keys/open?includeFso=false&includeNonFso=true&limit=*&prevKey": "/nonFSO",
+  
"/keys/open?includeFso=false&includeNonFso=true&limit=*&prevKey=/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/1105696238501917":
 "/nonFSO1",
+  "/keys/open?includeFso=false&includeNonFso=true&limit=*&prevKey=21": 
"/nonFSO2",
+  "/keys/open?includeFso=false&includeNonFso=true&limit=*&prevKey=31": 
"/nonFSO3",
+  
+  
+  "/keys/open?includeFso=true&includeNonFso=false&limit=*&prevKey": "/fso",
+  
"/keys/open?includeFso=true&includeNonFso=false&limit=*&prevKey=/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/110569623850191713":
 "/fso1",
+  
"/keys/open?includeFso=true&includeNonFso=false&limit=*&prevKey=/-9223372036854775552/-9223372036854775040/-9223372036852420095/2421/110569623850191713":
 "/fso2",
+  
"/keys/open?includeFso=true&includeNonFso=false&limit=*&prevKey=/-9223372036854775552/-9223372036854775040/-9223372036852420095/2431/110569623850191713":
 "/fso3",
+ 
+  "/keys/deletePending?limit=*&prevKey" : "/keydeletePending",
+  
"/keys/deletePending?limit=*&prevKey=/volume/bucket1/rcmeevblsf/106/-9223372036843950335"
 : "/keydeletePending1",
+  
"/keys/deletePending?limit=*&prevKey=/-9223372036854775552/-9223372036854775040/-9223372036852420095/2421/110569623850191"
 : "/keydeletePending2",
+  "/keys/deletePending?limit=*&prevKey=31" : "/keydeletePending3",
+  
+  "/containers/mismatch/deleted?limit=*&prevKey": "/deleted",
+  "/containers/mismatch/deleted?limit=*&prevKey=11": "/deleted1",
+  "/containers/mismatch/deleted?limit=*&prevKey=21": "/deleted2",
+  "/containers/mismatch/deleted?limit=*&prevKey=31": "/deleted3",
+  "/containers/mismatch/deleted?limit=*&prevKey=41": "/deleted4"
 }
\ No newline at end of file
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/navBar/navBar.less
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/navBar/navBar.less
index b1570b63ea..28978baaf9 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/navBar/navBar.less
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/navBar/navBar.less
@@ -48,6 +48,14 @@
           border-right: 5px solid #1DA57A;
         }
       }
+      .ant-menu-sub{
+        background-color: #0a2542;
+        color: #FFF;
+        &::after {
+          border-right: 5px solid #1DA57A;
+          color: #FFF;
+        }
+      }
     }
   }
 }
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/navBar/navBar.tsx
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/navBar/navBar.tsx
index d51afb60a4..afa52df7ac 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/navBar/navBar.tsx
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/navBar/navBar.tsx
@@ -117,11 +117,23 @@ class NavBar extends React.Component<INavBarProps> {
             <span>Containers</span>
             <Link to='/Containers'/>
           </Menu.Item>
-          <Menu.Item key='/Insights'>
-            <Icon type='bar-chart'/>
-            <span>Insights</span>
-            <Link to='/Insights'/>
-          </Menu.Item>
+          <Menu.SubMenu
+            title={
+              <span><Icon type='bar-chart' />
+                <span>Insights</span>
+              </span>
+            }>
+              <Menu.Item key="/Insights">
+                <span><Icon type='bar-chart' /></span>
+                <span>Insights</span>
+                <Link to='/Insights' />
+              </Menu.Item>
+              <Menu.Item key="/Om">
+              <span> <Icon type="database"/></span>
+              <span>OM DB Insights</span>
+              <Link to='/Om' />
+              </Menu.Item>
+          </Menu.SubMenu>
           <Menu.Item key='/DiskUsage'>
             <Icon type='pie-chart'/>
             <span>Disk Usage</span>
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/constants/breadcrumbs.constants.tsx
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/constants/breadcrumbs.constants.tsx
index 7f6d6fd03c..a7633fb521 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/constants/breadcrumbs.constants.tsx
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/constants/breadcrumbs.constants.tsx
@@ -27,5 +27,6 @@ export const breadcrumbNameMap: IBreadcrumbNameMap = {
   '/MissingContainers': 'Missing Containers',
   '/Insights': 'Insights',
   '/DiskUsage': 'Disk Usage', 
-  '/Heatmap': 'Heatmap'
+  '/Heatmap': 'Heatmap',
+  '/Om':'Om',
 };
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/routes.tsx
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/routes.tsx
index fa53d24775..fe991e052a 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/routes.tsx
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/routes.tsx
@@ -23,6 +23,8 @@ import {NotFound} from './views/notFound/notFound';
 import {IRoute} from './types/routes.types';
 import {MissingContainers} from './views/missingContainers/missingContainers';
 import {Insights} from './views/insights/insights';
+import {Om} from './views/insights/om/om';
+
 import {DiskUsage} from './views/diskUsage/diskUsage';
 import {Heatmap} from './views/heatMap/heatmap';
 
@@ -43,6 +45,10 @@ export const routes: IRoute[] = [
     path: '/Insights',
     component: Insights
   },
+  {
+    path: '/Om',
+    component: Om
+  },
   {
     path: '/MissingContainers',
     component: MissingContainers
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.less
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/insights/om/om.less
similarity index 62%
copy from 
hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.less
copy to 
hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/insights/om/om.less
index 3433707894..15d68dfc86 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.less
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/insights/om/om.less
@@ -16,15 +16,12 @@
  * limitations under the License.
  */
 
-.overview-content {
-  margin: 0 5px 20px;
-  .icon-small {
-    font-size: 16px;
+.ant-pagination-disabled a, .ant-pagination-disabled:hover a, 
.ant-pagination-disabled:focus a, .ant-pagination-disabled 
.ant-pagination-item-link, .ant-pagination-disabled:hover 
.ant-pagination-item-link, .ant-pagination-disabled:focus 
.ant-pagination-item-link {
+    color: rgba(0, 0, 0, 0.65);
+    cursor: pointer !important;
   }
-  .meta {
-    font-size: 12px;
-  }
-  .padded-text {
-    padding-left: 5px;
-  }
-}
+  
+  .ant-pagination-disabled, .ant-pagination-disabled:hover, 
.ant-pagination-disabled:focus {
+    color: rgba(0, 0, 0, 0.65);
+    cursor: pointer !important;
+  }
\ No newline at end of file
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/insights/om/om.tsx
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/insights/om/om.tsx
new file mode 100644
index 0000000000..9b8e129791
--- /dev/null
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/insights/om/om.tsx
@@ -0,0 +1,1042 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import React from 'react';
+import axios from 'axios';
+import { Table, Tabs, Menu, Dropdown, Icon, Tooltip } from 'antd';
+import { PaginationConfig } from 'antd/lib/pagination';
+import filesize from 'filesize';
+import moment from 'moment';
+import { showDataFetchError, byteToSize } from 'utils/common';
+import './om.less';
+import { ColumnSearch } from 'utils/columnSearch';
+import { Link } from 'react-router-dom';
+
+
+const size = filesize.partial({ standard: 'iec' });
+const { TabPane } = Tabs;
+//Previous Key Need to store respective Lastkey of each API
+let mismatchPrevKeyList = [0];
+let openPrevKeyList =[""];
+let keysPendingPrevList =[""];
+let deletedKeysPrevList =[0];
+let keysPendingExpanded: any = [];
+interface IContainerResponse {
+  containerId: number;
+  mismatchMissingState: string;
+  OMContainerState: string;
+  SCMContainerState: string;
+  existsAt: string;
+  pipelines: string[];
+  numberOfKeys: number;
+}
+
+interface IKeyLevelResponse {
+  path: string;
+  keyState: string;
+  inStateSince: number;
+  size: number;
+  replicatedSize: number;
+  unreplicatedSize: number;
+  replicationType: string;
+}
+
+interface IDeleteKeyResponse {
+  objectID: number;
+  updateID: number;
+  parentObjectID: number;
+  volumeName: string;
+  bucketName: string;
+  keyName: string;
+  dataSize: number;
+  path: string;
+  replicatedTotal: number;
+  unreplicatedTotal: number;
+  omKeyInfoList: IDeleteKeyResponse[];
+}
+
+interface IContainersResponse {
+  containers: IContainerResponse[];
+}
+
+interface IKeysResponse {
+  entities: IKeyLevelResponse[];
+}
+interface IDeleteKeysResponse {
+  deletedkeyinfo: IDeleteKeyResponse[];
+}
+
+interface IKeyResponse {
+  Volume: string;
+  Bucket: string;
+  Key: string;
+  DataSize: number;
+  Versions: number[];
+  Blocks: object;
+  CreationTime: string;
+  ModificationTime: string;
+}
+
+interface IContainerKeysResponse {
+  totalCount: number;
+  keys: IKeyResponse[];
+}
+
+const KEY_TABLE_COLUMNS = [
+  {
+    title: 'Volume',
+    dataIndex: 'Volume',
+    key: 'Volume'
+  },
+  {
+    title: 'Bucket',
+    dataIndex: 'Bucket',
+    key: 'Bucket'
+  },
+  {
+    title: 'Key',
+    dataIndex: 'Key',
+    key: 'Key'
+  },
+  {
+    title: 'Size',
+    dataIndex: 'DataSize',
+    key: 'DataSize',
+    render: (dataSize: number) => <div>{size(dataSize)}</div>
+  },
+  {
+    title: 'Date Created',
+    dataIndex: 'CreationTime',
+    key: 'CreationTime',
+    render: (date: string) => moment(date).format('lll')
+  },
+  {
+    title: 'Date Modified',
+    dataIndex: 'ModificationTime',
+    key: 'ModificationTime',
+    render: (date: string) => moment(date).format('lll')
+  }
+];
+
+const MISMATCH_TAB_COLUMNS = [
+  {
+    title: 'Container ID',
+    dataIndex: 'containerId',
+    key: 'containerId',
+    width: '20%',
+    isSearchable: true,
+
+  },
+  {
+    title: 'Count Of Keys',
+    dataIndex: 'numberOfKeys',
+    key: 'numberOfKeys',
+    sorter: (a: IContainerResponse, b: IContainerResponse) => a.numberOfKeys - 
b.numberOfKeys
+  },
+  {
+    title: 'Pipelines',
+    dataIndex: 'pipelines',
+    key: 'pipelines',
+    render: (pipelines: any) => (
+      <div>
+        {pipelines && pipelines.map(pipeline => (
+          <div key={pipeline.id.id}>
+            {pipeline.id.id}
+          </div>
+        ))}
+      </div>
+    )
+  }
+];
+
+const OPEN_KEY_TAB_COLUMNS = [
+  {
+    title: 'Key',
+    dataIndex: 'path',
+    key: 'path',
+    isSearchable: true
+  },
+  {
+    title: 'Amount of data',
+    dataIndex: 'size',
+    key: 'size',
+    render: (size :any) => size = byteToSize(size,1)
+  },
+  {
+    title: 'Path',
+    dataIndex: 'key',
+    key: 'key',
+    width: '270px'
+  },
+  {
+    title: 'In state since',
+    dataIndex: 'inStateSince',
+    key: 'inStateSince',
+    render: (inStateSince: number) => {
+      return inStateSince > 0 ? moment(inStateSince).format('ll LTS') : 'NA';
+    }
+  },
+  {
+    title: 'Replication Factor',
+    dataIndex: 'replicationInfo',
+    key: 'replicationfactor',
+    render: (replicationInfo: any) => (
+      <div>
+        {
+          <div >
+            {Object.values(replicationInfo)[0]}
+          </div>
+        }
+      </div>
+    )
+  },
+  {
+    title: 'Replication Type',
+    dataIndex: 'replicationInfo',
+    key: 'replicationtype',
+    render: (replicationInfo: any) => (
+      <div>
+        {
+          <div >
+            {Object.values(replicationInfo)[2]}
+          </div>
+        }
+      </div>
+    )
+  }
+
+];
+
+const PENDING_TAB_COLUMNS = [
+  {
+    title: 'Key Name',
+    dataIndex: 'fileName',
+    key: 'fileName'
+  },
+  {
+    title: 'Path',
+    dataIndex: 'keyName',
+    key: 'keyName',
+    isSearchable: true,
+  },
+  {
+    title: 'Total Data Size',
+    dataIndex: 'dataSize',
+    key: 'dataSize',
+    render: (dataSize :any) => dataSize = byteToSize(dataSize,1)
+  },
+  {
+    title: 'Total Key Count',
+    dataIndex: 'keyCount',
+    key: 'keyCount',
+  }
+];
+
+const DELETED_TAB_COLUMNS = [
+  {
+    title: 'Container ID',
+    dataIndex: 'containerId',
+    key: 'containerId',
+    width: '20%',
+    isSearchable: true
+  },
+  {
+    title: 'Count Of Keys',
+    dataIndex: 'numberOfKeys',
+    key: 'numberOfKeys',
+    sorter: (a: IContainerResponse, b: IContainerResponse) => a.numberOfKeys - 
b.numberOfKeys
+  },
+  {
+    title: 'Pipelines',
+    dataIndex: 'pipelines',
+    key: 'pipelines',
+    render: (pipelines: any) => (
+      <div>
+        {pipelines && pipelines.map((pipeline:any) => (
+          <div key={pipeline.id.id}>
+            {pipeline.id.id}
+          </div>
+        ))}
+      </div>
+    )
+  }
+];
+
+interface IExpandedRow {
+  [key: number]: IExpandedRowState;
+}
+
+interface IExpandedRowState {
+  containerId: number;
+  loading: boolean;
+  dataSource: IKeyResponse[];
+  totalCount: number;
+}
+
+interface IOmdbInsightsState {
+  loading: boolean;
+  mismatchDataSource: IContainerResponse[];
+  openKeysDataSource: IKeyLevelResponse[];
+  pendingDeleteKeyDataSource: any[];
+  expandedRowData: IExpandedRow;
+  deletedContainerKeysDataSource: [];
+  prevKeyMismatch: number;
+  mismatchMissingState: any;
+  prevKeyOpen: string;
+  prevKeyDeleted: number;
+  prevKeyDeletePending: string;
+  activeTab: string;
+  DEFAULT_LIMIT: number,
+  clickable: boolean;
+  includeFso: boolean;
+  includeNonFso: boolean;
+  prevClickable :boolean
+}
+
+export class Om extends React.Component<Record<string, object>, 
IOmdbInsightsState> {
+
+  constructor(props = {}) {
+    super(props);
+    this.addexistAtColumn();
+    this.addfsoNonfsoKeyColumn();
+    this.state = {
+      loading: false,
+      mismatchDataSource: [],
+      openKeysDataSource: [],
+      pendingDeleteKeyDataSource: [],
+      deletedContainerKeysDataSource: [],
+      prevKeyMismatch: 0,
+      mismatchMissingState: 'SCM',
+      prevKeyOpen: "",
+      prevKeyDeletePending: "",
+      prevKeyDeleted: 0,
+      expandedRowData: {},
+      activeTab: '1',
+      DEFAULT_LIMIT: 10,
+      clickable: true,
+      includeFso: true,
+      includeNonFso: false,
+      prevClickable:false
+    };
+  }
+
+  addexistAtColumn = () => {
+    // Inside the class component to access the React internal state
+    const existsAtColumn = {
+      title: <span>
+        <Dropdown overlay={this.existAtScmOmMenu} >
+            <label> Exists at&nbsp;&nbsp;
+              <Icon type="funnel-plot" theme="filled" 
/>&nbsp;&nbsp;&nbsp;&nbsp;
+            </label>
+        </Dropdown>&nbsp;&nbsp;
+        <label>
+          <Tooltip placement='top' title={<span>{'SCM: Container exist at SCM 
but missing at OM.'}<br />
+            {'OM: Container exist at OM but missing at SCM.'}</span>}>
+          <Icon type='info-circle' />
+          </Tooltip>
+       </label>
+      </span>,
+      dataIndex: 'existsAt',
+      key: 'existsAt',
+      isVisible: true,
+      render: (existsAt: any) => {
+        return (
+          <div key={existsAt}>
+            {existsAt}
+          </div>
+
+        );
+      }
+    }
+    if (MISMATCH_TAB_COLUMNS.length > 0 && 
MISMATCH_TAB_COLUMNS[MISMATCH_TAB_COLUMNS.length - 1].key !== 'existsAt') {
+      MISMATCH_TAB_COLUMNS.push(existsAtColumn);
+    }
+  };
+
+  existAtScmOmMenu = () => (
+    <Menu
+      onClick={e => this.handleExistsAtChange(e)}>
+      <Menu.Item key='OM'>
+        OM
+      </Menu.Item>
+      <Menu.Item key='SCM'>
+        SCM
+      </Menu.Item>
+    </Menu>
+  );
+
+  handleExistsAtChange = (e: any) => {
+    console.log("handleExistsAtChange", e.key);
+    if (e.key === 'OM') {
+      mismatchPrevKeyList = [0];
+      this.fetchMismatchContainers(this.state.DEFAULT_LIMIT, 0, 'SCM');
+    }
+    else {
+      mismatchPrevKeyList = [0];
+      this.fetchMismatchContainers(this.state.DEFAULT_LIMIT, 0, 'OM');
+    }
+  };
+
+  addfsoNonfsoKeyColumn = () => {
+    // Inside the class component to access the React internal state
+    const fsoNonfsoColumn = {
+      title: <span>
+        <Dropdown overlay={this.fsoNonfsoMenu} >
+          <label> Type&nbsp;&nbsp;
+            <Icon type="funnel-plot" theme="filled" />
+          </label>
+        </Dropdown></span>,
+      dataIndex: 'type',
+      key: 'type',
+      isVisible: true,
+
+      render: (type: any) => {
+        return (
+          <div key={type}>
+            {type}
+          </div>
+        );
+      }
+    }
+    if (OPEN_KEY_TAB_COLUMNS.length > 0 && 
OPEN_KEY_TAB_COLUMNS[OPEN_KEY_TAB_COLUMNS.length - 1].key !== 'type') {
+      OPEN_KEY_TAB_COLUMNS.push(fsoNonfsoColumn);
+    }
+  };
+
+  fsoNonfsoMenu = () => (
+    <Menu
+      defaultSelectedKeys={['OM']}
+      onClick={e => this.handlefsoNonfsoMenuChange(e)}>
+      <Menu.Item key='fso'>
+        FSO
+      </Menu.Item>
+      <Menu.Item key='nonFso'>
+        Non FSO
+      </Menu.Item>
+    </Menu>
+  );
+
+  handlefsoNonfsoMenuChange = (e: any) => {
+    console.log("handlefsoNonfsoMenuChange", e.key);
+    if (e.key === 'fso') {
+      openPrevKeyList =[""];
+      this.fetchOpenKeys(true, false, this.state.DEFAULT_LIMIT, "");
+    }
+    else {
+      openPrevKeyList = [""];
+      this.fetchOpenKeys(false, true, this.state.DEFAULT_LIMIT, "");
+    }
+  };
+
+  componentDidMount(): void {
+    // Fetch mismatch containers on component mount
+    this.fetchMismatchContainers(this.state.DEFAULT_LIMIT, 
this.state.prevKeyMismatch, this.state.mismatchMissingState);
+  };
+
+  fetchMismatchContainers = (limit: number, prevKeyMismatch: number, 
mismatchMissingState: any) => {
+    this.setState({
+      loading: true,
+      clickable: true,
+      prevClickable: true
+    });
+    const mismatchEndpoint = 
`/api/v1/containers/mismatch?limit=${limit}&prevKey=${prevKeyMismatch}&missingIn=${mismatchMissingState}`
+    axios.get(mismatchEndpoint).then(mismatchContainersResponse => {
+      const mismatchContainers: IContainerResponse[] = 
mismatchContainersResponse && mismatchContainersResponse.data && 
mismatchContainersResponse.data.containerDiscrepancyInfo;
+      if (mismatchContainersResponse && mismatchContainersResponse.data && 
mismatchContainersResponse.data.lastKey === null) {
+        //No Further Records may be last record
+        mismatchPrevKeyList = [0];
+        this.setState({
+          loading: false,
+          clickable: false,
+          mismatchDataSource: mismatchContainers,
+          expandedRowData: {},
+        })
+      }
+      else {
+        if (this.state.prevKeyMismatch === 0 ){
+          this.setState({
+            prevClickable: false
+          })
+        }
+        if 
(mismatchPrevKeyList.includes(mismatchContainersResponse.data.lastKey) === 
false) {
+          mismatchPrevKeyList.push(mismatchContainersResponse.data.lastKey);
+        }
+        this.setState({
+          loading: false,
+          prevKeyMismatch: mismatchContainersResponse && 
mismatchContainersResponse.data && mismatchContainersResponse.data.lastKey,
+          mismatchDataSource: mismatchContainers,
+        });
+      }
+    }).catch(error => {
+      this.setState({
+        loading: false,
+      });
+      showDataFetchError(error.toString());
+    });
+  };
+
+  fetchOpenKeys = (includeFso: boolean, includeNonFso: boolean, limit: number, 
prevKeyOpen: string) => {
+    this.setState({
+      loading: true,
+      clickable: true,
+      prevClickable:true
+    });
+
+    let openKeysEndpoint;
+    if (prevKeyOpen === "") {
+      openKeysEndpoint = 
`/api/v1/keys/open?includeFso=${includeFso}&includeNonFso=${includeNonFso}&limit=${limit}&prevKey`;
+    }
+    else {
+      openKeysEndpoint = 
`/api/v1/keys/open?includeFso=${includeFso}&includeNonFso=${includeNonFso}&limit=${limit}&prevKey=${prevKeyOpen}`;
+    }
+
+    axios.get(openKeysEndpoint).then(openKeysResponse => {
+      const openKeys = openKeysResponse && openKeysResponse.data;
+      let allopenKeysResponse: any[] = [];
+      for (let key in openKeys) {
+        if (Array.isArray(openKeys[key])) {
+          openKeys[key] && openKeys[key].map((item: any) => 
(allopenKeysResponse.push({ ...item, type: key })));
+        }
+      }
+
+      if (openKeysResponse && openKeysResponse.data && 
openKeysResponse.data.lastKey === "") {
+        //last key of api is null may be last record no further records
+        openPrevKeyList = [""];
+        this.setState({
+          loading: false,
+          clickable: false,
+          openKeysDataSource: allopenKeysResponse
+        })
+      }
+      else {
+         if (this.state.prevKeyOpen === "" ){
+          this.setState({
+            prevClickable: false
+          })
+        }
+        if (openPrevKeyList.includes(openKeysResponse.data.lastKey) === false) 
{
+          openPrevKeyList.push(openKeysResponse.data.lastKey);
+        }
+        this.setState({
+          loading: false,
+          prevKeyOpen: openKeysResponse && openKeysResponse.data && 
openKeysResponse.data.lastKey,
+          openKeysDataSource: allopenKeysResponse,
+        })
+      };
+    }).catch(error => {
+      this.setState({
+        loading: false
+      });
+      showDataFetchError(error.toString());
+    });
+
+  };
+
+  fetchDeletePendingKeys = (limit: number, prevKeyDeletePending: string) => {
+    this.setState({
+      loading: true,
+      clickable: true,
+      prevClickable :true
+    });
+    keysPendingExpanded =[];
+    let deletePendingKeysEndpoint;
+    if (prevKeyDeletePending === "" || prevKeyDeletePending === undefined ) {
+      deletePendingKeysEndpoint = 
`/api/v1/keys/deletePending?limit=${limit}&prevKey`;
+    }
+    else {
+      deletePendingKeysEndpoint = 
`/api/v1/keys/deletePending?limit=${limit}&prevKey=${prevKeyDeletePending}`;
+    }
+    axios.get(deletePendingKeysEndpoint).then(deletePendingKeysResponse => {
+      const deletePendingKeys = deletePendingKeysResponse && 
deletePendingKeysResponse.data && deletePendingKeysResponse.data.deletedKeyInfo;
+      //Use Summation Logic iterate through all object and find sum of all 
datasize
+      let deletedKeyInfoData = [];
+      deletedKeyInfoData = deletePendingKeys && 
deletePendingKeys.flatMap((infoObject:any) => {
+        const { omKeyInfoList } = infoObject;
+        keysPendingExpanded.push(infoObject);
+        let count = 0;
+        let item = omKeyInfoList && omKeyInfoList.reduce((obj:any, item:any) 
=> {
+          const { dataSize } = item;
+          const newDataSize = obj.dataSize + dataSize;
+          count = count + 1;
+          return { ...item, dataSize: newDataSize };
+        }, { "dataSize": 0 });
+      
+        return {
+          "dataSize": item.dataSize,
+          "fileName":item.fileName,
+          "keyName": item.keyName,
+          "path": item.path,
+          "keyCount": count
+        }
+      });
+
+      if (deletePendingKeysResponse && deletePendingKeysResponse.data && 
deletePendingKeysResponse.data.lastKey === "") {
+        //last key of api is empty may be last record no further records
+        keysPendingPrevList =[""];
+        this.setState({
+          loading: false,
+          clickable: false,
+          pendingDeleteKeyDataSource: deletedKeyInfoData
+        })
+      }
+      else {
+           if (this.state.prevKeyDeletePending === "" 
||this.state.prevKeyDeletePending === undefined ){
+          this.setState({
+            prevClickable: false
+          })
+        }
+        if 
(keysPendingPrevList.includes(deletePendingKeysResponse.data.lastKey) === 
false) {
+          keysPendingPrevList.push(deletePendingKeysResponse.data.lastKey);
+        }
+        this.setState({
+          loading: false,
+          prevKeyDeletePending: deletePendingKeysResponse && 
deletePendingKeysResponse.data && deletePendingKeysResponse.data.lastKey,
+          pendingDeleteKeyDataSource: deletedKeyInfoData
+        });
+      }
+    }).catch(error => {
+      this.setState({
+        loading: false,
+      });
+      showDataFetchError(error.toString());
+    });
+  };
+
+  expandedKey =  ( record:any)=> {
+    const filteredData = keysPendingExpanded && 
keysPendingExpanded.flatMap((info:any) =>
+    info.omKeyInfoList && info.omKeyInfoList.filter((item: any) => 
item.keyName === record.keyName)
+    )
+    const columns= [{
+      title: 'Data Size',
+      dataIndex: 'dataSize',
+      key: 'dataSize',
+      render: (dataSize :any) => dataSize = dataSize > 0 ? 
byteToSize(dataSize,1) : dataSize
+    },
+    {
+      title: 'Replicated Data Size',
+      dataIndex: 'replicatedSize',
+      key: 'replicatedSize',
+      render: (replicatedSize :any) => replicatedSize = replicatedSize > 0 ? 
byteToSize(replicatedSize,1) : replicatedSize
+    },
+    {
+      title: 'Creation Time',
+      dataIndex: 'creationTime',
+      key: 'creationTime',
+      render: (creationTime: number) => {
+        return creationTime > 0 ? moment(creationTime).format('ll LTS') : 'NA';
+      }
+    },
+    {
+      title: 'Modification Time',
+      dataIndex: 'modificationTime',
+      key: 'modificationTime',
+      render: (modificationTime: number) => {
+        return modificationTime > 0 ? moment(modificationTime).format('ll 
LTS') : 'NA';
+      }
+    }
+  ]
+    return (
+      <Table
+      columns={columns}
+      dataSource={filteredData}
+        pagination={true}
+        rowKey='dataSize'
+    />
+    );
+  }
+
+  fetchDeletedKeys = (limit: number, prevKeyDeleted: number) => {
+    this.setState({
+      loading: true,
+      clickable: true,
+      prevClickable: true
+    });
+    const deletedKeysEndpoint = 
`/api/v1/containers/mismatch/deleted?limit=${limit}&prevKey=${prevKeyDeleted}`;
+    axios.get(deletedKeysEndpoint).then(deletedKeysResponse => {
+      let deletedContainerKeys = [];
+      deletedContainerKeys = deletedKeysResponse && deletedKeysResponse.data 
&& deletedKeysResponse.data.containers;
+      if (deletedKeysResponse && deletedKeysResponse.data && 
deletedKeysResponse.data.lastKey === null) {
+        // no more further records last key
+        deletedKeysPrevList = [0];
+        this.setState({
+          loading: false,
+          clickable: false,
+          deletedContainerKeysDataSource: deletedContainerKeys,
+          expandedRowData: {},
+        })
+      }
+      else {
+        if (this.state.prevKeyDeleted === 0 ){
+          this.setState({
+            prevClickable: false
+          })
+        }
+        if (deletedKeysPrevList.includes(deletedKeysResponse.data.lastKey) === 
false) {
+          deletedKeysPrevList.push(deletedKeysResponse.data.lastKey);
+        }
+        this.setState({
+          loading: false,
+          prevKeyDeleted: deletedKeysResponse && deletedKeysResponse.data && 
deletedKeysResponse.data.lastKey,
+          deletedContainerKeysDataSource: deletedContainerKeys
+        })
+      };
+    }).catch(error => {
+      this.setState({
+        loading: false
+      });
+      showDataFetchError(error.toString());
+    });
+  };
+
+  changeTab = (activeKey: any) => {
+    //when changing tab make empty all datasets and prevkey and deafult 
filtering to intial values
+    mismatchPrevKeyList = [0];
+    openPrevKeyList =[""];
+    keysPendingPrevList =[""];
+    deletedKeysPrevList =[0];
+    this.setState({
+      activeTab: activeKey,
+      mismatchDataSource: [],
+      openKeysDataSource: [],
+      pendingDeleteKeyDataSource: [],
+      deletedContainerKeysDataSource: [],
+      expandedRowData: {},
+      prevKeyOpen: "",
+      prevKeyDeletePending: "",
+      prevKeyDeleted: 0,
+      prevKeyMismatch: 0,
+      mismatchMissingState: 'SCM',
+      includeFso: true,
+      includeNonFso: false,
+      DEFAULT_LIMIT: 10,
+
+    }, () => {
+      if (activeKey === '2') {
+        this.fetchOpenKeys(this.state.includeFso, this.state.includeNonFso, 
this.state.DEFAULT_LIMIT, this.state.prevKeyOpen);
+      } else if (activeKey === '3') {
+        keysPendingExpanded =[];
+        this.fetchDeletePendingKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeletePending);
+      } else if (activeKey === '4') {
+        this.fetchDeletedKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeleted);
+      }
+      else {
+        this.fetchMismatchContainers(this.state.DEFAULT_LIMIT, 
this.state.prevKeyMismatch, this.state.mismatchMissingState);
+      }
+    })
+  };
+
+  fetchPreviousRecords = () => {
+    // to fetch previous call stored all prevkey in array and fetching in 
respective tabs
+    if (this.state.activeTab === '2') {
+        this.setState({
+          prevKeyOpen: 
openPrevKeyList[openPrevKeyList.indexOf(this.state.prevKeyOpen)-2]
+        }, () => {
+          this.fetchOpenKeys(this.state.includeFso, this.state.includeNonFso, 
this.state.DEFAULT_LIMIT,this.state.prevKeyOpen);
+        })
+    } else if (this.state.activeTab === '3') {
+      this.setState({
+        prevKeyDeletePending: 
keysPendingPrevList[keysPendingPrevList.indexOf(this.state.prevKeyDeletePending)-2]
+      }, () => {
+        this.fetchDeletePendingKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeletePending);
+      })
+    } else if (this.state.activeTab === '4') {
+      this.setState({
+        prevKeyDeleted: 
deletedKeysPrevList[deletedKeysPrevList.indexOf(this.state.prevKeyDeleted)-2]
+      }, () => {
+        
this.fetchDeletedKeys(this.state.DEFAULT_LIMIT,this.state.prevKeyDeleted);
+      })
+    }
+      else {
+        this.setState({
+          prevKeyMismatch: 
mismatchPrevKeyList[mismatchPrevKeyList.indexOf(this.state.prevKeyMismatch)-2]
+        }, () => {
+          
this.fetchMismatchContainers(this.state.DEFAULT_LIMIT,this.state.prevKeyMismatch,
 this.state.mismatchMissingState);
+        })
+      }
+  };
+
+  fetchNextRecords = () => {
+    // To Call API for Page Level for each page fetch next records
+    if (this.state.activeTab === '2') {
+      this.fetchOpenKeys(this.state.includeFso, this.state.includeNonFso, 
this.state.DEFAULT_LIMIT, this.state.prevKeyOpen);
+    } else if (this.state.activeTab === '3') {
+      this.fetchDeletePendingKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeletePending);
+    } else if (this.state.activeTab === '4') {
+      this.fetchDeletedKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeleted);
+    }
+    else {
+      this.fetchMismatchContainers(this.state.DEFAULT_LIMIT, 
this.state.prevKeyMismatch, this.state.mismatchMissingState);
+    }
+  };
+
+  itemRender = (_: any, type: string, originalElement: any) => {
+    if (type === 'prev') {
+      return <div>{this.state.prevClickable ? <Link to="/Om" 
onClick={this.fetchPreviousRecords}> Prev</Link>: <Link to="/Om" style={{ 
pointerEvents: 'none' }}>No Records</Link>}</div>;
+    }
+    if (type === 'next') {
+      return <div> {this.state.clickable ? <Link to="/Om" 
onClick={this.fetchNextRecords}> {'>>'} </Link> : <Link to="/Om" style={{ 
pointerEvents: 'none' }}>No More Further Records</Link>}</div>;
+    }
+    return originalElement;
+  };
+
+  onShowSizeChange = (current: number, pageSize: number) => {
+    console.log("onShowSizeChange",pageSize, this.state);
+    console.log("Open Keys Array", keysPendingPrevList);
+    if (this.state.activeTab === '2') {
+      //open keys
+      this.setState({
+        DEFAULT_LIMIT: pageSize,
+        prevKeyOpen: 
openPrevKeyList[openPrevKeyList.indexOf(this.state.prevKeyOpen)-1]
+      }, () => {
+        this.fetchOpenKeys(this.state.includeFso, this.state.includeNonFso, 
this.state.DEFAULT_LIMIT,this.state.prevKeyOpen);
+      });
+    }
+    else if (this.state.activeTab === '3') {
+      //keys pending for deletion
+      this.setState({
+        DEFAULT_LIMIT: pageSize,
+        prevKeyDeletePending: 
keysPendingPrevList[keysPendingPrevList.indexOf(this.state.prevKeyDeletePending)-1]
+      }, () => {
+        this.fetchDeletePendingKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeletePending);
+      })
+    }
+    else if (this.state.activeTab === '4') {
+      //deleted container keys
+      this.setState({
+        DEFAULT_LIMIT: pageSize,
+        prevKeyDeleted: 
deletedKeysPrevList[deletedKeysPrevList.indexOf(this.state.prevKeyDeleted)-1]
+      }, () => {
+        this.fetchDeletedKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeleted);
+      })
+    }
+    else {
+      // active tab 1 for mismatch
+      this.setState({
+        DEFAULT_LIMIT: pageSize,
+        prevKeyMismatch: 
mismatchPrevKeyList[mismatchPrevKeyList.indexOf(this.state.prevKeyMismatch)-1]
+      }, () => {
+        
this.fetchMismatchContainers(this.state.DEFAULT_LIMIT,this.state.prevKeyMismatch,
 this.state.mismatchMissingState);
+      });
+    }
+  };
+
+  onRowExpandClick = (expanded: boolean, record: IContainerResponse) => {
+    if (expanded) {
+      this.setState(({ expandedRowData }) => {
+        const expandedRowState: IExpandedRowState = 
expandedRowData[record.containerId] ?
+          Object.assign({}, expandedRowData[record.containerId], { loading: 
true }) :
+          { containerId: record.containerId, loading: true, dataSource: [], 
totalCount: 0 };
+        return {
+          expandedRowData: Object.assign({}, expandedRowData, { 
[record.containerId]: expandedRowState })
+        };
+      });
+      axios.get(`/api/v1/containers/${record.containerId}/keys`).then(response 
=> {
+        const containerKeysResponse: IContainerKeysResponse = response.data;
+        this.setState(({ expandedRowData }) => {
+          const expandedRowState: IExpandedRowState =
+            Object.assign({}, expandedRowData[record.containerId],
+              { loading: false, dataSource: containerKeysResponse.keys, 
totalCount: containerKeysResponse.totalCount });
+          return {
+            expandedRowData: Object.assign({}, expandedRowData, { 
[record.containerId]: expandedRowState })
+          };
+        });
+      }).catch(error => {
+        this.setState(({ expandedRowData }) => {
+          const expandedRowState: IExpandedRowState =
+            Object.assign({}, expandedRowData[record.containerId],
+              { loading: false });
+          return {
+            expandedRowData: Object.assign({}, expandedRowData, { 
[record.containerId]: expandedRowState })
+          };
+        });
+        showDataFetchError(error.toString());
+      });
+    }
+  };
+
+  expandedRowRender = (record: IContainerResponse) => {
+    const { expandedRowData } = this.state;
+    const containerId = record.containerId;
+    if (expandedRowData[containerId]) {
+      const containerKeys: IExpandedRowState = expandedRowData[containerId];
+      const dataSource = containerKeys && containerKeys.dataSource && 
containerKeys.dataSource.map(record => (
+        { ...record, uid: `${record.Volume}/${record.Bucket}/${record.Key}` }
+      ));
+      const paginationConfig: PaginationConfig = {
+        showTotal: (total: number, range) => `${range[0]}-${range[1]} of 
${total} keys`
+      };
+      return (
+        <Table
+          loading={containerKeys.loading} dataSource={dataSource}
+          columns={KEY_TABLE_COLUMNS} pagination={paginationConfig}
+          rowKey='uid' />
+      );
+    }
+    return <div>Loading...</div>;
+  };
+
+  searchMismatchColumn = () => {
+    return MISMATCH_TAB_COLUMNS.reduce<any[]>((filtered, column) => {
+      if (column.isSearchable) {
+        const newColumn = {
+          ...column,
+          ...new ColumnSearch(column).getColumnSearchProps(column.dataIndex)
+        };
+        filtered.push(newColumn);
+      } else {
+        filtered.push(column);
+      }
+      return filtered;
+    }, [])
+  };
+
+  searchOpenKeyColumn = () => {
+    return OPEN_KEY_TAB_COLUMNS.reduce<any[]>((filtered, column) => {
+      if (column.isSearchable) {
+        const newColumn = {
+          ...column,
+          ...new ColumnSearch(column).getColumnSearchProps(column.dataIndex)
+        };
+        filtered.push(newColumn);
+      } else {
+        filtered.push(column);
+      }
+
+      return filtered;
+    }, [])
+  };
+
+  searchKeysPendingColumn = () => {
+    return PENDING_TAB_COLUMNS.reduce<any[]>((filtered, column) => {
+      if (column.isSearchable) {
+        const newColumn = {
+          ...column,
+          ...new ColumnSearch(column).getColumnSearchProps(column.dataIndex)
+        };
+        filtered.push(newColumn);
+      } else {
+        filtered.push(column);
+      }
+
+      return filtered;
+    }, [])
+  };
+
+  searchDeletedKeyColumn = () => {
+    return DELETED_TAB_COLUMNS.reduce<any[]>((filtered, column) => {
+      if (column.isSearchable) {
+        const newColumn = {
+          ...column,
+          ...new ColumnSearch(column).getColumnSearchProps(column.dataIndex)
+        };
+        filtered.push(newColumn);
+      } else {
+        filtered.push(column);
+      }
+
+      return filtered;
+    }, [])
+  };
+
+  render() {
+    const { mismatchDataSource, loading, openKeysDataSource, 
pendingDeleteKeyDataSource, deletedContainerKeysDataSource } = this.state;
+
+    const paginationConfig: PaginationConfig = {
+      pageSize:this.state.DEFAULT_LIMIT,
+      defaultPageSize: this.state.DEFAULT_LIMIT,
+      pageSizeOptions: ['10', '20', '30', '50'],
+      showSizeChanger: true,
+      onShowSizeChange: this.onShowSizeChange,
+      itemRender: this.itemRender
+    };
+
+    const generateMismatchTable = (dataSource: any) => {
+      return <Table
+        expandRowByClick dataSource={dataSource}
+        columns={this.searchMismatchColumn()}
+        loading={loading}
+        pagination={paginationConfig} rowKey='containerId'
+        expandedRowRender={this.expandedRowRender} 
onExpand={this.onRowExpandClick} />
+    }
+
+    const generateOpenKeyTable = (dataSource: any) => {
+      return <Table
+        expandRowByClick dataSource={dataSource}
+        columns={this.searchOpenKeyColumn()}
+        loading={loading} rowKey='path'
+        pagination={paginationConfig} />
+    }
+
+    const generateKeysPendingTable = (dataSource: any) => {
+      return <Table
+        expandRowByClick dataSource={dataSource}
+        columns={this.searchKeysPendingColumn()}
+        loading={loading}
+        pagination={paginationConfig} rowKey='keyName'
+        expandedRowRender={this.expandedKey} />
+    }
+
+    const generateDeletedKeysTable = (dataSource: any) => {
+      return <Table
+        expandRowByClick dataSource={dataSource}
+        columns={this.searchDeletedKeyColumn()}
+        loading={loading}
+        pagination={paginationConfig} rowKey='containerId'
+        expandedRowRender={this.expandedRowRender} 
onExpand={this.onRowExpandClick}
+      />
+    }
+
+  
+
+    return (
+      <div className='missing-containers-container'>
+        <div className='page-header'>
+          OM DB Insights
+        </div>
+        <div className='content-div'>
+          <Tabs defaultActiveKey='1' onChange={this.changeTab}>
+            <TabPane key='1' tab={`Container Mismatch Info`}>
+              {generateMismatchTable(mismatchDataSource)}
+            </TabPane>
+            <TabPane key='2' tab={`Open Keys`}>
+              {generateOpenKeyTable(openKeysDataSource)}
+            </TabPane>
+            <TabPane key='3'
+              tab={<label>Keys Pending for Deletion&nbsp;&nbsp;
+                <Tooltip placement='top' title="Keys that are pending for 
deletion.">
+                  <Icon type='info-circle' />
+                </Tooltip>
+              </label>
+              }>
+              {generateKeysPendingTable(pendingDeleteKeyDataSource)}
+            </TabPane>
+            <TabPane key='4'
+              tab={<label>Deleted Container Keys&nbsp;&nbsp;
+                <Tooltip placement='top' title={"Keys mapped to Containers in 
DELETED state SCM."}>
+                  <Icon type='info-circle' />
+                </Tooltip>
+              </label>
+              }>
+              {generateDeletedKeysTable(deletedContainerKeysDataSource)}
+            </TabPane>
+          </Tabs>
+        </div>
+      </div>
+    );
+  }
+}
\ No newline at end of file
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.less
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.less
index 3433707894..e683a7d5d0 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.less
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.less
@@ -28,3 +28,9 @@
     padding-left: 5px;
   }
 }
+
+.summary-font{
+  .overview-card .ant-card-meta-detail .ant-card-meta-title {
+      font-size: 17px !important;
+    }
+  }
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.tsx
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.tsx
index 8b3e7abaaa..09720fbc22 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.tsx
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/overview/overview.tsx
@@ -23,7 +23,7 @@ import axios from 'axios';
 import {IStorageReport} from 'types/datanode.types';
 import moment from 'moment';
 import AutoReloadPanel from 'components/autoReloadPanel/autoReloadPanel';
-import {showDataFetchError} from 'utils/common';
+import {showDataFetchError,byteToSize} from 'utils/common';
 import {AutoReloadHelper} from 'utils/autoReloadHelper';
 import filesize from 'filesize';
 import './overview.less';
@@ -62,6 +62,12 @@ interface IOverviewState {
   openContainers: number;
   deletedContainers: number;
   keysPendingDeletion: number;
+  openSummarytotalUnrepSize: number,
+  openSummarytotalRepSize: number,
+  openSummarytotalOpenKeys: number,
+  deletePendingSummarytotalUnrepSize: number,
+  deletePendingSummarytotalRepSize: number,
+  deletePendingSummarytotalDeletedKeys: number,
 }
 
 export class Overview extends React.Component<Record<string, object>, 
IOverviewState> {
@@ -90,7 +96,13 @@ export class Overview extends React.Component<Record<string, 
object>, IOverviewS
       omStatus: '',
       openContainers: 0,
       deletedContainers: 0,
-      keysPendingDeletion: 0
+      keysPendingDeletion: 0,
+      openSummarytotalUnrepSize: 0,
+      openSummarytotalRepSize: 0,
+      openSummarytotalOpenKeys: 0,
+      deletePendingSummarytotalUnrepSize: 0,
+      deletePendingSummarytotalRepSize: 0,
+      deletePendingSummarytotalDeletedKeys: 0
     };
     this.autoReload = new AutoReloadHelper(this._loadData);
   }
@@ -101,8 +113,10 @@ export class Overview extends 
React.Component<Record<string, object>, IOverviewS
     });
     axios.all([
       axios.get('/api/v1/clusterState'),
-      axios.get('/api/v1/task/status')
-    ]).then(axios.spread((clusterStateResponse, taskstatusResponse) => {
+      axios.get('/api/v1/task/status'),
+      axios.get('/api/v1/keys/open?limit=0'),
+      axios.get('/api/v1/keys/deletePending?limit=1'),
+    ]).then(axios.spread((clusterStateResponse, taskstatusResponse, 
openResponse, deletePendingResponse) => {
       
       const clusterState: IClusterStateResponse = clusterStateResponse.data;
       const taskStatus = taskstatusResponse.data;
@@ -125,7 +139,13 @@ export class Overview extends 
React.Component<Record<string, object>, IOverviewS
         deletedContainers: clusterState.deletedContainers,
         lastRefreshed: Number(moment()),
         lastUpdatedOMDBDelta: omDBDeltaObject && 
omDBDeltaObject.lastUpdatedTimestamp,
-        lastUpdatedOMDBFull: omDBFullObject && 
omDBFullObject.lastUpdatedTimestamp
+        lastUpdatedOMDBFull: omDBFullObject && 
omDBFullObject.lastUpdatedTimestamp,
+        openSummarytotalUnrepSize: openResponse.data && 
openResponse.data.keysSummary && 
openResponse.data.keysSummary.totalUnreplicatedDataSize,
+        openSummarytotalRepSize: openResponse.data && 
openResponse.data.keysSummary && 
openResponse.data.keysSummary.totalReplicatedDataSize,
+        openSummarytotalOpenKeys: openResponse.data && 
openResponse.data.keysSummary && openResponse.data.keysSummary.totalOpenKeys,
+        deletePendingSummarytotalUnrepSize: deletePendingResponse.data && 
deletePendingResponse.data.keysSummary && 
deletePendingResponse.data.keysSummary.totalUnreplicatedDataSize,
+        deletePendingSummarytotalRepSize: deletePendingResponse.data && 
deletePendingResponse.data.keysSummary && 
deletePendingResponse.data.keysSummary.totalReplicatedDataSize,
+        deletePendingSummarytotalDeletedKeys: deletePendingResponse.data && 
deletePendingResponse.data.keysSummary && 
deletePendingResponse.data.keysSummary.totalDeletedKeys
       });
     })).catch(error => {
       this.setState({
@@ -165,14 +185,29 @@ export class Overview extends 
React.Component<Record<string, object>, IOverviewS
   }
 
   render() {
-    const {loading, datanodes, pipelines, storageReport, containers, volumes, 
buckets,
-      keys, missingContainersCount, lastRefreshed, lastUpdatedOMDBDelta, 
lastUpdatedOMDBFull, omStatus, openContainers, deletedContainers, 
keysPendingDeletion} = this.state;
+    const {loading, datanodes, pipelines, storageReport, containers, volumes, 
buckets, openSummarytotalUnrepSize, openSummarytotalRepSize, 
openSummarytotalOpenKeys,
+      
deletePendingSummarytotalUnrepSize,deletePendingSummarytotalRepSize,deletePendingSummarytotalDeletedKeys,keysPendingDeletion,
+      keys, missingContainersCount, lastRefreshed, lastUpdatedOMDBDelta, 
lastUpdatedOMDBFull, omStatus, openContainers, deletedContainers } = this.state;
       
     const datanodesElement = (
       <span>
         <Icon type='check-circle' theme='filled' className='icon-success 
icon-small'/> {datanodes} <span className='ant-card-meta-description 
meta'>HEALTHY</span>
       </span>
     );
+    const openSummaryData = (
+        <div>
+          {openSummarytotalRepSize!== undefined ? 
byteToSize(openSummarytotalRepSize, 1): '0'}   <span 
className='ant-card-meta-description meta'>Total Replicated Data Size</span><br 
/>
+          {openSummarytotalUnrepSize!== undefined ? 
byteToSize(openSummarytotalUnrepSize, 1): '0'}  <span 
className='ant-card-meta-description meta'>Total UnReplicated Data 
Size</span><br />
+          {openSummarytotalOpenKeys !== undefined ? openSummarytotalOpenKeys: 
'0'}  <span className='ant-card-meta-description meta'>Total Open Keys</span>
+        </div>
+    );
+    const deletePendingSummaryData = (
+      <div>
+        {deletePendingSummarytotalRepSize!== undefined ? 
byteToSize(deletePendingSummarytotalRepSize, 1): '0'}  <span 
className='ant-card-meta-description meta'>Total Replicated Data Size</span><br 
/>
+        {deletePendingSummarytotalUnrepSize!== undefined ? 
byteToSize(deletePendingSummarytotalUnrepSize,1): '0'}  <span 
className='ant-card-meta-description meta'>Total UnReplicated Data 
Size</span><br />
+        {deletePendingSummarytotalDeletedKeys !== undefined ? 
deletePendingSummarytotalDeletedKeys: '0'}  <span 
className='ant-card-meta-description meta'>Total Pending Delete Keys</span>
+      </div>
+  );
     const containersTooltip = missingContainersCount === 1 ? 'container is 
missing' : 'containers are missing';
     const containersLink = missingContainersCount > 0 ? '/MissingContainers' : 
'/Containers';
     const duLink = '/DiskUsage';
@@ -241,6 +276,12 @@ export class Overview extends 
React.Component<Record<string, object>, IOverviewS
           <Col xs={24} sm={18} md={12} lg={12} xl={6}>
             <OverviewCard loading={loading} title='Pending Key Deletions' 
data={keysPendingDeletion.toString()} icon='delete' />
           </Col>
+          <Col xs={24} sm={18} md={12} lg={12} xl={6} className='summary-font'>
+            <OverviewCard loading={loading} title='Open Keys Summary' 
data={openSummaryData} icon='file-text' />
+          </Col>
+          <Col xs={24} sm={18} md={12} lg={12} xl={6} className='summary-font'>
+            <OverviewCard loading={loading} title='Pending Deleted Keys 
Summary' data={deletePendingSummaryData} icon='delete' />
+          </Col>
         </Row>
       </div>
     );


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to