This is an automated email from the ASF dual-hosted git repository.
yashmayya pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pinot.git
The following commit(s) were added to refs/heads/master by this push:
new c5514f698e Change display of rebalance response (#15331)
c5514f698e is described below
commit c5514f698ecb9f56fb1b99ec97579e0a43b76352
Author: Soumya Himanish Mohapatra
<[email protected]>
AuthorDate: Wed Mar 26 12:28:13 2025 +0530
Change display of rebalance response (#15331)
---
.../RebalanceServer/RebalanceResponse.tsx | 85 ++++++++++++++++++++++
.../RebalanceServerResponses/CustomCodeMirror.css | 21 ++++++
.../RebalanceServerPreChecksResponse.tsx | 72 ++++++++++++++++++
.../RebalanceServerRebalanceSummaryResponse.tsx | 53 ++++++++++++++
.../RebalanceServerResponseCard.tsx | 30 ++++++++
.../RebalanceServerResponseLabelValue.tsx | 31 ++++++++
.../RebalanceServerSectionResponse.tsx | 36 +++++++++
...ationSection.tsx => RebalanceServerSection.tsx} | 13 ++--
.../Homepage/Operations/RebalanceServerTableOp.tsx | 37 +++-------
9 files changed, 347 insertions(+), 31 deletions(-)
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceResponse.tsx
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceResponse.tsx
new file mode 100644
index 0000000000..b7550e7683
--- /dev/null
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceResponse.tsx
@@ -0,0 +1,85 @@
+/**
+ * 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 {RebalanceServerSection} from "./RebalanceServerSection";
+import React from 'react';
+import {Grid, Paper} from "@material-ui/core";
+import CustomCodemirror from "../../../CustomCodemirror";
+import {
+ RebalanceServerSectionResponse
+} from "./RebalanceServerResponses/RebalanceServerSectionResponse";
+import {RebalanceServerPreChecksResponse} from
"./RebalanceServerResponses/RebalanceServerPreChecksResponse";
+import {RebalanceServerResponseLabelValue} from
"./RebalanceServerResponses/RebalanceServerResponseLabelValue";
+import {
+ RebalanceServerRebalanceSummaryResponse
+} from "./RebalanceServerResponses/RebalanceServerRebalanceSummaryResponse";
+import {RebalanceServerResponseCard} from
"./RebalanceServerResponses/RebalanceServerResponseCard";
+
+export const RebalanceResponse = ({ response }) => {
+ const responseSectionsToShow = [
+ {
+ name: 'Segment Assignment',
+ key: 'segmentAssignment'
+ },
+ {
+ name: 'Instance Assignment',
+ key: 'instanceAssignment'
+ },
+ {
+ name: 'Tier Instance Assignment',
+ key: 'tierInstanceAssignment'
+ }
+ ];
+
+ return (
+ <Grid container spacing={2} key='rebalance-response'>
+ <Grid item xs={12}>
+ <Paper variant='outlined' style={{ padding: 10 }}>
+ <RebalanceServerSection sectionTitle={"Job Summary"}>
+ <Grid container spacing={2}>
+ <Grid item
xs={6}><RebalanceServerResponseLabelValue label='Description'
value={response.description} /></Grid>
+ <Grid item
xs={6}><RebalanceServerResponseLabelValue label='Status'
value={response.status} /></Grid>
+ <Grid item
xs={6}><RebalanceServerResponseLabelValue label='Job Id' value={response.jobId}
/></Grid>
+ </Grid>
+ </RebalanceServerSection>
+ </Paper>
+ </Grid>
+ { response.preChecksResult && <RebalanceServerPreChecksResponse
response={response} /> }
+ { response.rebalanceSummaryResult &&
<RebalanceServerRebalanceSummaryResponse response={response} /> }
+ {
+ responseSectionsToShow.map((section) => {
+ if (Object.keys(response).includes(section.key)) {
+ return <RebalanceServerSectionResponse
key={section.key} sectionTitle={section.name}
sectionData={response[section.key]} />
+ }
+ })
+ }
+
+ {/* To be kept at the last, RAW JSON Preview */}
+ <Grid item xs={12}>
+ <RebalanceServerResponseCard>
+ <RebalanceServerSection sectionTitle={"Raw JSON"}
canHideSection showSectionByDefault={false}>
+ <CustomCodemirror
+ data={response}
+ isEditable={false}
+ />
+ </RebalanceServerSection>
+ </RebalanceServerResponseCard>
+ </Grid>
+ </Grid>
+ );
+}
\ No newline at end of file
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/CustomCodeMirror.css
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/CustomCodeMirror.css
new file mode 100644
index 0000000000..b8df6bc9f9
--- /dev/null
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/CustomCodeMirror.css
@@ -0,0 +1,21 @@
+/**
+ * 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.
+ */
+.rebalance_server_response_section .CodeMirror {
+ max-height: 200px;
+}
\ No newline at end of file
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerPreChecksResponse.tsx
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerPreChecksResponse.tsx
new file mode 100644
index 0000000000..87c5f721e8
--- /dev/null
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerPreChecksResponse.tsx
@@ -0,0 +1,72 @@
+/**
+ * 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 {Grid, Typography} from "@material-ui/core";
+import {RebalanceServerSection} from "../RebalanceServerSection";
+import Alert from "@material-ui/lab/Alert";
+import InfoOutlinedIcon from "@material-ui/icons/InfoOutlined";
+import {Cancel, CheckCircle, Warning} from "@material-ui/icons";
+import React from "react";
+import {RebalanceServerResponseLabelValue} from
"./RebalanceServerResponseLabelValue";
+import {RebalanceServerResponseCard} from "./RebalanceServerResponseCard";
+
+const PreCheckStatusIcon = ({ preCheckStatus } : { preCheckStatus: "PASS" |
"WARN" | "ERROR" }) => {
+ switch (preCheckStatus) {
+ case "PASS":
+ return <CheckCircle style={{ marginRight: 10, marginTop: 5 }}
fontSize='small' htmlColor='green' />;
+ case "ERROR":
+ return <Cancel style={{ marginRight: 10, marginTop: 5 }}
fontSize='small' color='error' />;
+ case "WARN":
+ return <Warning style={{ marginRight: 10, marginTop: 5 }}
fontSize='small' htmlColor='orange' />;
+ }
+}
+
+export const RebalanceServerPreChecksResponse = ({ response }) => {
+ const numberOfPreChecksPassing = Object.keys(response.preChecksResult ??
{})
+ .filter(result => response.preChecksResult[result].preCheckStatus ===
'PASS').length;
+ const totalNumberOfPreChecks = Object.keys(response.preChecksResult ??
{}).length;
+ return (
+ <Grid item xs={12}>
+ <RebalanceServerResponseCard>
+ <RebalanceServerSection
+ canHideSection
+ sectionTitle={"Pre Checks Result"}
+ additionalSectionTitle={
+ <Typography variant='body2' style={{ color:
numberOfPreChecksPassing === totalNumberOfPreChecks ? 'green' : 'red' }}>
+ {numberOfPreChecksPassing} /
{totalNumberOfPreChecks}
+ </Typography>
+ }>
+ <Alert style={{ marginBottom: 20 }} color='info'
icon={<InfoOutlinedIcon fontSize='small' />}>
+ <Typography variant='caption'>
+ These are non-blocking checks.
+ Rebalance can be run even if these fail. Please be
sure to fix the issues before proceeding with actual rebalance!
+ </Typography>
+ </Alert>
+ <Grid container spacing={2}>
+ {
Object.keys(response.preChecksResult).map((preCheckResult, index) => (
+ <Grid item xs={12} key={preCheckResult} style={{
display: 'flex', alignItems: 'flex-start' }}>
+ <PreCheckStatusIcon
preCheckStatus={response.preChecksResult[preCheckResult].preCheckStatus} />
+ <RebalanceServerResponseLabelValue
label={preCheckResult} value={response.preChecksResult[preCheckResult].message}
/>
+ </Grid>)
+ )}
+ </Grid>
+ </RebalanceServerSection>
+ </RebalanceServerResponseCard>
+ </Grid>
+ )
+}
\ No newline at end of file
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerRebalanceSummaryResponse.tsx
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerRebalanceSummaryResponse.tsx
new file mode 100644
index 0000000000..ba79b18167
--- /dev/null
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerRebalanceSummaryResponse.tsx
@@ -0,0 +1,53 @@
+/**
+ * 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 {Grid} from "@material-ui/core";
+import {RebalanceServerSection} from "../RebalanceServerSection";
+import React from "react";
+import './CustomCodeMirror.css';
+import {RebalanceServerResponseCard} from "./RebalanceServerResponseCard";
+import {RebalanceServerSectionResponse} from
"./RebalanceServerSectionResponse";
+
+export const RebalanceServerRebalanceSummaryResponse = ({ response }) => {
+ const responseSectionsToShow = [
+ {
+ name: 'I. Server Information',
+ key: 'serverInfo'
+ },
+ {
+ name: 'II. Segment Information',
+ key: 'segmentInfo'
+ }
+ ];
+
+ return (
+ <Grid item xs={12}>
+ <RebalanceServerResponseCard>
+ <RebalanceServerSection sectionTitle={"Rebalance Summary
Result"} canHideSection>
+ {
+ responseSectionsToShow.map((section) => {
+ if
(Object.keys(response.rebalanceSummaryResult).includes(section.key)) {
+ return <RebalanceServerSectionResponse
key={section.key} sectionTitle={section.name}
sectionData={response.rebalanceSummaryResult[section.key]} />
+ }
+ })
+ }
+ </RebalanceServerSection>
+ </RebalanceServerResponseCard>
+ </Grid>
+ )
+}
\ No newline at end of file
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerResponseCard.tsx
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerResponseCard.tsx
new file mode 100644
index 0000000000..96c5054529
--- /dev/null
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerResponseCard.tsx
@@ -0,0 +1,30 @@
+/**
+ * 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 {Paper} from "@material-ui/core";
+import React, {ReactNode} from "react";
+
+export const RebalanceServerResponseCard = (
+ { children }: { children: ReactNode }
+) => {
+ return (
+ <Paper variant='outlined' style={{ padding: 10 }}>
+ { children }
+ </Paper>
+ );
+}
\ No newline at end of file
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerResponseLabelValue.tsx
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerResponseLabelValue.tsx
new file mode 100644
index 0000000000..093185de4e
--- /dev/null
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerResponseLabelValue.tsx
@@ -0,0 +1,31 @@
+/**
+ * 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 {Box, Typography} from "@material-ui/core";
+import React from "react";
+
+export const RebalanceServerResponseLabelValue = (
+ { label, value }: { label: string; value: string; }
+) => {
+ return (
+ <Box>
+ <Typography color='textSecondary'
variant='caption'>{label}</Typography>
+ <Typography style={{ fontWeight: 600 }}
variant='body2'>{value}</Typography>
+ </Box>
+ );
+}
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerSectionResponse.tsx
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerSectionResponse.tsx
new file mode 100644
index 0000000000..6738a7aae0
--- /dev/null
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerResponses/RebalanceServerSectionResponse.tsx
@@ -0,0 +1,36 @@
+/**
+ * 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 {Grid} from "@material-ui/core";
+import {RebalanceServerSection} from "../RebalanceServerSection";
+import React from "react";
+import CustomCodemirror from "../../../../CustomCodemirror";
+
+export const RebalanceServerSectionResponse = ({ sectionData, sectionTitle })
=> {
+ return (
+ <Grid item xs={12}>
+ <RebalanceServerSection sectionTitle={sectionTitle} canHideSection>
+ <CustomCodemirror
+ customClass='rebalance_server_response_section'
+ data={sectionData}
+ isEditable={false}
+ />
+ </RebalanceServerSection>
+ </Grid>
+ );
+}
\ No newline at end of file
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerConfigurationSection.tsx
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerSection.tsx
similarity index 81%
rename from
pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerConfigurationSection.tsx
rename to
pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerSection.tsx
index 40a655ced9..7836b3d69a 100644
---
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerConfigurationSection.tsx
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServer/RebalanceServerSection.tsx
@@ -16,19 +16,21 @@
* specific language governing permissions and limitations
* under the License.
*/
-import {Box, Typography} from "@material-ui/core";
+import {Box, Divider, Typography} from "@material-ui/core";
import React, {ReactNode, useEffect, useRef, useState} from "react";
import Link from "@material-ui/core/Link";
type RebalanceServerConfigurationSectionProps = {
sectionTitle: string;
children: ReactNode;
+ maxHeight?: number;
showSectionByDefault?: boolean;
canHideSection?: boolean;
+ additionalSectionTitle?: ReactNode;
}
-export const RebalanceServerConfigurationSection = (
- { sectionTitle, children, showSectionByDefault = true, canHideSection =
false }: RebalanceServerConfigurationSectionProps
+export const RebalanceServerSection = (
+ { sectionTitle, additionalSectionTitle, children, showSectionByDefault =
true, canHideSection = false, maxHeight }:
RebalanceServerConfigurationSectionProps
) => {
const [showSection, setShowSection] =
useState<boolean>(showSectionByDefault);
const showHideSectionRef = useRef(null);
@@ -50,12 +52,13 @@ export const RebalanceServerConfigurationSection = (
}, [showSection, showHideSectionRef]);
return (
- <Box marginBottom={2}>
- <Box display='flex' flexDirection='row' alignItems='center'
marginBottom={2}>
+ <Box marginBottom={showSection ? 2 : 0}>
+ <Box display='flex' flexDirection='row' alignItems='center'
marginBottom={showSection ? 2 : 0}>
<div ref={showHideSectionRef} />
<Typography variant='body1' style={{ fontWeight: 'bold',
marginRight: 10 }}>
{sectionTitle}
</Typography>
+ {additionalSectionTitle && <Box
marginRight={1}>{additionalSectionTitle}</Box>}
{canHideSection && (
<Link style={{ cursor: 'pointer' }} onClick={() =>
setShowSection(visible => !visible)}>
{ showSection ? "Hide" : "Show" }
diff --git
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServerTableOp.tsx
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServerTableOp.tsx
index 7236530771..3078776ed8 100644
---
a/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServerTableOp.tsx
+++
b/pinot-controller/src/main/resources/app/components/Homepage/Operations/RebalanceServerTableOp.tsx
@@ -19,31 +19,22 @@
import React from 'react';
import {
- DialogContentText,
- FormControl,
- FormControlLabel,
Grid,
- Input,
- InputLabel,
- Switch,
Box,
Typography,
- List,
- ListItem,
- ListItemText,
- ListItemIcon,
Divider, Button
} from '@material-ui/core';
import Dialog from '../../CustomDialog';
import PinotMethodUtils from '../../../utils/PinotMethodUtils';
-import CustomCodemirror from '../../CustomCodemirror';
import {RebalanceServerDialogHeader} from
"./RebalanceServer/RebalanceServerDialogHeader";
-import {RebalanceServerConfigurationSection} from
"./RebalanceServer/RebalanceServerConfigurationSection";
+import {
+ RebalanceServerSection
+} from "./RebalanceServer/RebalanceServerSection";
import Alert from "@material-ui/lab/Alert";
import InfoOutlinedIcon from "@material-ui/icons/InfoOutlined";
import {rebalanceServerOptions} from
"./RebalanceServer/RebalanceServerOptions";
-import FiberManualRecordIcon from '@material-ui/icons/FiberManualRecord';
import {RebalanceServerConfigurationOption} from
"./RebalanceServer/RebalanceServerConfigurationOption";
+import {RebalanceResponse} from "./RebalanceServer/RebalanceResponse";
type Props = {
tableType: string,
@@ -115,16 +106,16 @@ export default function RebalanceServerTableOp({
>
{!rebalanceResponse ?
<Box flexDirection="column">
- <RebalanceServerConfigurationSection sectionTitle='Before you
begin'>
+ <RebalanceServerSection sectionTitle='Before you begin'>
<Alert color='info' icon={<InfoOutlinedIcon fontSize='small' />}>
<Typography variant='body2'>
It is strongly recommended to run once via "Dry Run" with
the options enabled prior to running the actual "Rebalance" operation.
This is needed to verify that rebalance will do what's
expected.
</Typography>
</Alert>
- </RebalanceServerConfigurationSection>
+ </RebalanceServerSection>
<Divider style={{ marginBottom: 20 }} />
- <RebalanceServerConfigurationSection sectionTitle='Basic Options'>
+ <RebalanceServerSection sectionTitle='Basic Options'>
<Grid container spacing={2}>
{rebalanceServerOptions.filter(option =>
!option.isAdvancedConfig && !option.isStatsGatheringConfig).map((option) => (
<Grid item xs={12} key={`basic-options-${option.name}`}>
@@ -132,9 +123,9 @@ export default function RebalanceServerTableOp({
</Grid>
))}
</Grid>
- </RebalanceServerConfigurationSection>
+ </RebalanceServerSection>
<Divider style={{ marginBottom: 20 }}/>
- <RebalanceServerConfigurationSection sectionTitle='Advanced
Options' canHideSection showSectionByDefault={false}>
+ <RebalanceServerSection sectionTitle='Advanced Options'
canHideSection showSectionByDefault={false}>
<Grid container spacing={2}>
{rebalanceServerOptions.filter(option =>
option.isAdvancedConfig).map((option) => (
<Grid item xs={12} key={`advanced-options-${option.name}`}>
@@ -142,17 +133,11 @@ export default function RebalanceServerTableOp({
</Grid>
))}
</Grid>
- </RebalanceServerConfigurationSection>
+ </RebalanceServerSection>
</Box>
:
<React.Fragment>
- <DialogContentText>
- Operation Status:
- </DialogContentText>
- <CustomCodemirror
- data={rebalanceResponse}
- isEditable={false}
- />
+ <RebalanceResponse response={rebalanceResponse} />
</React.Fragment>
}
</Dialog>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]