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

zitadombi 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 932c520622 HDDS-9076. Recon UI OMDB Insights Changes and Improvements 
(#5176)
932c520622 is described below

commit 932c52062225f16328e1a553cf1ee43afff4447d
Author: Smita <[email protected]>
AuthorDate: Fri Sep 15 20:51:52 2023 +0530

    HDDS-9076. Recon UI OMDB Insights Changes and Improvements (#5176)
---
 .../webapps/recon/ozone-recon-web/api/db.json      | 142 +++++++++++----------
 .../webapps/recon/ozone-recon-web/api/routes.json  |  15 +--
 .../src/components/overviewCard/overviewCard.tsx   |  37 +++++-
 .../ozone-recon-web/src/views/insights/om/om.tsx   |  56 ++++----
 .../src/views/overview/overview.tsx                |  12 +-
 5 files changed, 146 insertions(+), 116 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 ed7e1a617c..74673e48e0 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
@@ -4858,11 +4858,11 @@
     "containerDiscrepancyInfo": []
   },
   "nonFSO": {
-    "lastKey": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/1105696238501917",
+    "lastKey": "11",
     "keysSummary": {
-      "totalUnreplicatedDataSize": 1000,
-      "totalReplicatedDataSize": 3000,
-      "totalOpenKeys": 0
+        "totalUnreplicatedDataSize": 10485760,
+        "totalReplicatedDataSize": 31457280,
+        "totalOpenKeys": 10
     },
     "nonFSO": [
       {
@@ -4893,7 +4893,7 @@
     "status": "OK"
   },
   "nonFSO1": {
-    "lastKey": 
"1/-9223372036854775552/-9223372036854775040/-9223372036852420095/2421/1105696238501917",
+    "lastKey": "21",
     "nonFSO": [
       {
         "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2440/110569623850191713",
@@ -4923,11 +4923,48 @@
     "status": "OK"
   },
   "nonFSO2": {
+    "lastKey": "31",
+    "nonFSO": [
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2440/110569623850191713",
+        "path": "nonfso 21",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+      }
+      },
+      {
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2441/110569623850191713",
+        "path": "nonfso 22",
+        "inStateSince": 1686156886632,
+        "size": 268435456,
+        "replicatedSize": 268435456,
+        "replicationInfo": {
+          "replicationFactor": "ONE",
+          "requiredNodes": 1,
+          "replicationType": "RATIS"
+      }
+      }
+    ],
+    "status": "OK"
+  },
+  "nonFSO3": {
+    "keysSummary": {
+        "totalUnreplicatedDataSize": 10485760,
+        "totalReplicatedDataSize": 31457280,
+        "totalOpenKeys": 10
+    },
     "lastKey": "",
-    "nonFSO": []
+    "replicatedDataSize": 0,
+    "unreplicatedDataSize": 0,
+    "status": "OK"
   },
   "fso": {
-    "lastKey": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/110569623850191713",
+    "lastKey": "11",
     "fso": [
       {
         "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2401/110569623850191713",
@@ -5061,7 +5098,7 @@
     "status": "OK"
   },
   "fso1": {
-    "lastKey": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2421/110569623850191713",
+    "lastKey": "21",
     "fso": [
       {
         "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/110569623850191713",
@@ -5170,21 +5207,15 @@
           "requiredNodes": 1,
           "replicationType": "RATIS"
         }
-      },
-      {
-        "key": "fso 20 key",
-        "path": "20",
-        "inStateSince": 1686156887186,
-        "size": 268435456,
-        "replicatedSize": 268435456,
-        "replicationInfo": {
-          "replicationFactor": "ONE",
-          "requiredNodes": 1,
-          "replicationType": "RATIS"
-        }
-      },
+      }
+    ],
+    "status": "OK"
+  },
+  "fso2": {
+    "lastKey": "31",
+    "fso": [
       {
-        "key": "fso 21",
+        "key": 
"/-9223372036854775552/-9223372036854775040/-9223372036852420095/2411/110569623850191713",
         "path": "21",
         "inStateSince": 1686156886632,
         "size": 268435456,
@@ -5210,7 +5241,7 @@
       {
         "key": "fso 23",
         "path": "23",
-        "inStateSince": 1686156887186,
+        "inStateSince": 1686156886632,
         "size": 268435456,
         "replicatedSize": 268435456,
         "replicationInfo": {
@@ -5234,7 +5265,7 @@
       {
         "key": "fso 25",
         "path": "25",
-        "inStateSince": 1686156887186,
+        "inStateSince": 1686156886632,
         "size": 268435456,
         "replicatedSize": 268435456,
         "replicationInfo": {
@@ -5244,7 +5275,7 @@
         }
       },
       {
-        "key": "fso 26",
+        "key": "fso 26 key",
         "path": "26",
         "inStateSince": 1686156887186,
         "size": 268435456,
@@ -5256,9 +5287,9 @@
         }
       },
       {
-        "key": "fso 27",
+        "key": "fso 17 key",
         "path": "27",
-        "inStateSince": 1686156887186,
+        "inStateSince": 1686156886632,
         "size": 268435456,
         "replicatedSize": 268435456,
         "replicationInfo": {
@@ -5268,7 +5299,7 @@
         }
       },
       {
-        "key": "fso 28",
+        "key": "fso 18 key",
         "path": "28",
         "inStateSince": 1686156887186,
         "size": 268435456,
@@ -5280,45 +5311,9 @@
         }
       },
       {
-        "key": "fso 29",
+        "key": "fso 19 key",
         "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,
+        "inStateSince": 1686156886632,
         "size": 268435456,
         "replicatedSize": 268435456,
         "replicationInfo": {
@@ -5328,8 +5323,8 @@
         }
       },
       {
-        "key": "fso 33",
-        "path": "33",
+        "key": "fso 20 key",
+        "path": "20",
         "inStateSince": 1686156887186,
         "size": 268435456,
         "replicatedSize": 268435456,
@@ -5342,9 +5337,16 @@
     ],
     "status": "OK"
   },
-  "fso2": {
+  "fso3": {
+    "keysSummary": {
+      "totalUnreplicatedDataSize": 10485760,
+      "totalReplicatedDataSize": 31457280,
+      "totalOpenKeys": 10
+   },
     "lastKey": "",
-    "fso": []
+    "replicatedDataSize": 0,
+    "unreplicatedDataSize": 0,
+    "status": "OK"
   },
   "keydeletePending":{
     "lastKey": "/volume/bucket1/rcmeevblsf/106/-9223372036843950335",
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 5dc3c0d310..45d7815ee6 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
@@ -47,21 +47,20 @@
 
   "/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=11": 
"/nonFSO1",
   "/keys/open?includeFso=false&includeNonFso=true&limit=*&prevKey=21": 
"/nonFSO2",
   "/keys/open?includeFso=false&includeNonFso=true&limit=*&prevKey=31": 
"/nonFSO3",
+  "/keys/open?includeFso=false&includeNonFso=true&limit=*": "/nonFSO",
   
-  
-  "/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/open?includeFso=true&includeNonFso=false&limit=*&prevKey=11": "/fso1",
+  "/keys/open?includeFso=true&includeNonFso=false&limit=*&prevKey=21": "/fso2",
+  "/keys/open?includeFso=true&includeNonFso=false&limit=*&prevKey=31": "/fso3",
+  "/keys/open?includeFso=true&includeNonFso=false&limit=*": "/fso",
  
-  "/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",
+  "/keys/deletePending?limit=*" : "/keydeletePending",
   
   "/containers/mismatch/deleted?limit=*&prevKey": "/deleted",
   "/containers/mismatch/deleted?limit=*&prevKey=11": "/deleted1",
diff --git 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/overviewCard/overviewCard.tsx
 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/overviewCard/overviewCard.tsx
index df15f8a588..c6fdb0a257 100644
--- 
a/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/overviewCard/overviewCard.tsx
+++ 
b/hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/components/overviewCard/overviewCard.tsx
@@ -46,17 +46,44 @@ const defaultProps = {
 
 interface IOverviewCardWrapperProps {
   linkToUrl: string;
+  title: string
 }
 
 class OverviewCardWrapper extends React.Component<IOverviewCardWrapperProps> {
+  // To set Current ACtive Tab for OM DB Insights
+  setCurrentActiveTab = (title: any) => {
+    if (title === "Open Keys Summary") {
+      return {
+        active: '2'
+      }
+    }
+    else if (title === "Pending Deleted Keys Summary") {
+      return {
+        active: '3'
+      }
+    }
+  };
+
   render() {
     const {linkToUrl, children} = this.props;
     if (linkToUrl) {
-      return (
-        <Link to={linkToUrl}>
-          {children}
-        </Link>
-      );
+      if (linkToUrl === '/Om') {
+        return (
+          <Link to={{
+            pathname: linkToUrl,
+            state: { activeTab: children._owner.stateNode.props ? 
this.setCurrentActiveTab(children._owner.stateNode.props.title).active : '1' }
+          }} >
+            {children}
+          </Link>
+        )
+      }
+      else {
+        return (
+          <Link to={linkToUrl}>
+            {children}
+          </Link>
+        )
+      }
     }
 
     return children;
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
index b9c40be0cb..0ccbee3fff 100644
--- 
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
@@ -302,10 +302,10 @@ interface IOmdbInsightsState {
   prevKeyDeletePending: string;
   activeTab: string;
   DEFAULT_LIMIT: number,
-  clickable: boolean;
+  nextClickable: boolean;
   includeFso: boolean;
   includeNonFso: boolean;
-  prevClickable :boolean
+  prevClickable: boolean
 }
 
 let cancelMismatchedEndpointSignal: AbortController;
@@ -332,12 +332,12 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
       prevKeyDeletePending: "",
       prevKeyDeleted: 0,
       expandedRowData: {},
-      activeTab: '1',
+      activeTab: props.location.state ? props.location.state.activeTab : '1',
       DEFAULT_LIMIT: 10,
-      clickable: true,
+      nextClickable: true,
       includeFso: true,
       includeNonFso: false,
-      prevClickable:false
+      prevClickable: false
     };
   }
 
@@ -438,7 +438,6 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
   );
 
   handlefsoNonfsoMenuChange = (e: any) => {
-    console.log("handlefsoNonfsoMenuChange", e.key);
     if (e.key === 'fso') {
       openPrevKeyList =[""];
       this.fetchOpenKeys(true, false, this.state.DEFAULT_LIMIT, "");
@@ -450,8 +449,16 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
   };
 
   componentDidMount(): void {
-    // Fetch mismatch containers on component mount
-    this.fetchMismatchContainers(this.state.DEFAULT_LIMIT, 
this.state.prevKeyMismatch, this.state.mismatchMissingState);
+    if (this.state.activeTab  === '1') {
+      this.fetchMismatchContainers(this.state.DEFAULT_LIMIT, 
this.state.prevKeyMismatch, this.state.mismatchMissingState);
+    } else 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') {
+      keysPendingExpanded =[];
+      this.fetchDeletePendingKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeletePending);
+    } else if (this.state.activeTab  === '4') {
+      this.fetchDeletedKeys(this.state.DEFAULT_LIMIT, 
this.state.prevKeyDeleted);
+    }
   };
 
   componentWillUnmount(): void {
@@ -465,8 +472,9 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
   fetchMismatchContainers = (limit: number, prevKeyMismatch: number, 
mismatchMissingState: any) => {
     this.setState({
       loading: true,
-      clickable: true,
-      prevClickable: true
+      nextClickable: true,
+      prevClickable: true,
+      mismatchMissingState
     });
 
     //Cancel any previous pending request
@@ -488,7 +496,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
         mismatchPrevKeyList = [0];
         this.setState({
           loading: false,
-          clickable: false,
+          nextClickable: false,
           mismatchDataSource: mismatchContainers,
           expandedRowData: {},
         })
@@ -519,8 +527,10 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
   fetchOpenKeys = (includeFso: boolean, includeNonFso: boolean, limit: number, 
prevKeyOpen: string) => {
     this.setState({
       loading: true,
-      clickable: true,
-      prevClickable:true
+      nextClickable: true,
+      prevClickable: true,
+      includeFso,
+      includeNonFso
     });
 
     //Cancel any previous pending request
@@ -534,7 +544,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
 
     let openKeysEndpoint;
     if (prevKeyOpen === "") {
-      openKeysEndpoint = 
`/api/v1/keys/open?includeFso=${includeFso}&includeNonFso=${includeNonFso}&limit=${limit}&prevKey`;
+      openKeysEndpoint = 
`/api/v1/keys/open?includeFso=${includeFso}&includeNonFso=${includeNonFso}&limit=${limit}`;
     }
     else {
       openKeysEndpoint = 
`/api/v1/keys/open?includeFso=${includeFso}&includeNonFso=${includeNonFso}&limit=${limit}&prevKey=${prevKeyOpen}`;
@@ -556,7 +566,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
         openPrevKeyList = [""];
         this.setState({
           loading: false,
-          clickable: false,
+          nextClickable: false,
           openKeysDataSource: allopenKeysResponse
         })
       }
@@ -587,7 +597,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
   fetchDeletePendingKeys = (limit: number, prevKeyDeletePending: string) => {
     this.setState({
       loading: true,
-      clickable: true,
+      nextClickable: true,
       prevClickable :true
     });
 
@@ -603,7 +613,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
     keysPendingExpanded =[];
     let deletePendingKeysEndpoint;
     if (prevKeyDeletePending === "" || prevKeyDeletePending === undefined ) {
-      deletePendingKeysEndpoint = 
`/api/v1/keys/deletePending?limit=${limit}&prevKey`;
+      deletePendingKeysEndpoint = `/api/v1/keys/deletePending?limit=${limit}`;
     }
     else {
       deletePendingKeysEndpoint = 
`/api/v1/keys/deletePending?limit=${limit}&prevKey=${prevKeyDeletePending}`;
@@ -641,7 +651,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
         keysPendingPrevList =[""];
         this.setState({
           loading: false,
-          clickable: false,
+          nextClickable: false,
           pendingDeleteKeyDataSource: deletedKeyInfoData
         })
       }
@@ -714,7 +724,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
   fetchDeletedKeys = (limit: number, prevKeyDeleted: number) => {
     this.setState({
       loading: true,
-      clickable: true,
+      nextClickable: true,
       prevClickable: true
     });
 
@@ -738,7 +748,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
         deletedKeysPrevList = [0];
         this.setState({
           loading: false,
-          clickable: false,
+          nextClickable: false,
           deletedContainerKeysDataSource: deletedContainerKeys,
           expandedRowData: {},
         })
@@ -852,14 +862,12 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
       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 <div> {this.state.nextClickable ? <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({
@@ -1085,7 +1093,7 @@ export class Om extends React.Component<Record<string, 
object>, IOmdbInsightsSta
           OM DB Insights
         </div>
         <div className='content-div'>
-          <Tabs defaultActiveKey='1' onChange={this.changeTab}>
+          <Tabs defaultActiveKey={this.state.activeTab} 
onChange={this.changeTab}>
             <TabPane key='1' tab={`Container Mismatch Info`}>
               {generateMismatchTable(mismatchDataSource)}
             </TabPane>
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 8d212cbdbb..56c756d1d0 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
@@ -62,7 +62,6 @@ interface IOverviewState {
   omStatus: string;
   openContainers: number;
   deletedContainers: number;
-  keysPendingDeletion: number;
   openSummarytotalUnrepSize: number,
   openSummarytotalRepSize: number,
   openSummarytotalOpenKeys: number,
@@ -100,7 +99,6 @@ export class Overview extends React.Component<Record<string, 
object>, IOverviewS
       omStatus: '',
       openContainers: 0,
       deletedContainers: 0,
-      keysPendingDeletion: 0,
       openSummarytotalUnrepSize: 0,
       openSummarytotalRepSize: 0,
       openSummarytotalOpenKeys: 0,
@@ -149,7 +147,6 @@ export class Overview extends 
React.Component<Record<string, object>, IOverviewS
         keys: clusterState.keys,
         missingContainersCount,
         openContainers: clusterState.openContainers,
-        keysPendingDeletion: clusterState.keysPendingDeletion,
         deletedContainers: clusterState.deletedContainers,
         lastRefreshed: Number(moment()),
         lastUpdatedOMDBDelta: omDBDeltaObject && 
omDBDeltaObject.lastUpdatedTimestamp,
@@ -211,7 +208,7 @@ export class Overview extends 
React.Component<Record<string, object>, IOverviewS
 
   render() {
     const {loading, datanodes, pipelines, storageReport, containers, volumes, 
buckets, openSummarytotalUnrepSize, openSummarytotalRepSize, 
openSummarytotalOpenKeys,
-      
deletePendingSummarytotalUnrepSize,deletePendingSummarytotalRepSize,deletePendingSummarytotalDeletedKeys,keysPendingDeletion,
+      
deletePendingSummarytotalUnrepSize,deletePendingSummarytotalRepSize,deletePendingSummarytotalDeletedKeys,
       keys, missingContainersCount, lastRefreshed, lastUpdatedOMDBDelta, 
lastUpdatedOMDBFull, omStatus, openContainers, deletedContainers } = this.state;
       
     const datanodesElement = (
@@ -298,14 +295,11 @@ 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='Deleted Containers' 
data={deletedContainers.toString()} icon='delete' />
           </Col>
-          <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' />
+            <OverviewCard loading={loading} title='Open Keys Summary' 
data={openSummaryData} icon='file-text' linkToUrl='/Om' />
           </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' />
+            <OverviewCard loading={loading} title='Pending Deleted Keys 
Summary' data={deletePendingSummaryData} icon='delete' linkToUrl='/Om'/>
           </Col>
         </Row>
       </div>


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

Reply via email to