From 6cafdba0007f4a43f396675dcc2317b8eb1cdc3a Mon Sep 17 00:00:00 2001 From: Elena Makarova Date: Thu, 30 Jan 2025 16:41:33 +0300 Subject: [PATCH] fix: disable autorefresh for ydb_ru --- .../Healthcheck/Healthcheck.scss | 6 ++++ .../Healthcheck/HealthcheckDetails.tsx | 5 +++- .../Healthcheck/HealthcheckPreview.tsx | 30 +++++++++++++++++-- 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss b/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss index 169ae1911..f9bb6b523 100644 --- a/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss +++ b/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss @@ -97,4 +97,10 @@ border-radius: 4px; } + &__icon-warn { + color: var(--g-color-text-warning); + } + &__icon-wrapper { + display: flex; + } } diff --git a/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckDetails.tsx b/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckDetails.tsx index a8868d93c..e6bc168d3 100644 --- a/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckDetails.tsx +++ b/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckDetails.tsx @@ -2,6 +2,7 @@ import React from 'react'; import {ResponseError} from '../../../../../components/Errors/ResponseError'; import {Loader} from '../../../../../components/Loader'; +import {useClusterBaseInfo} from '../../../../../store/reducers/cluster/cluster'; import {cn} from '../../../../../utils/cn'; import {useAutoRefreshInterval} from '../../../../../utils/hooks'; import {useHealthcheck} from '../useHealthcheck'; @@ -19,8 +20,10 @@ interface HealthcheckDetailsProps { export function HealthcheckDetails({tenantName}: HealthcheckDetailsProps) { const [autoRefreshInterval] = useAutoRefreshInterval(); + const {name} = useClusterBaseInfo(); const {issueTrees, loading, error} = useHealthcheck(tenantName, { - autorefresh: autoRefreshInterval, + //FIXME https://github.com/ydb-platform/ydb-embedded-ui/issues/1889 + autorefresh: name === 'ydb_ru' ? undefined : autoRefreshInterval, }); const renderContent = () => { diff --git a/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.tsx b/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.tsx index a72503c23..3bcf03adc 100644 --- a/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.tsx +++ b/src/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.tsx @@ -6,11 +6,12 @@ import { TriangleExclamationFill, } from '@gravity-ui/icons'; import type {IconData} from '@gravity-ui/uikit'; -import {Icon} from '@gravity-ui/uikit'; +import {Icon, Popover} from '@gravity-ui/uikit'; import {DiagnosticCard} from '../../../../../components/DiagnosticCard/DiagnosticCard'; import {ResponseError} from '../../../../../components/Errors/ResponseError'; import {Loader} from '../../../../../components/Loader'; +import {useClusterBaseInfo} from '../../../../../store/reducers/cluster/cluster'; import {healthcheckApi} from '../../../../../store/reducers/healthcheckInfo/healthcheckInfo'; import {SelfCheckResult} from '../../../../../types/api/healthcheck'; import {cn} from '../../../../../utils/cn'; @@ -18,6 +19,8 @@ import {useAutoRefreshInterval} from '../../../../../utils/hooks'; import i18n from './i18n'; +import CircleExclamationIcon from '@gravity-ui/icons/svgs/circle-exclamation.svg'; + import './Healthcheck.scss'; const b = cn('healthcheck'); @@ -38,6 +41,10 @@ const icons: Record = { export function HealthcheckPreview(props: HealthcheckPreviewProps) { const {tenantName, active} = props; const [autoRefreshInterval] = useAutoRefreshInterval(); + + const {name} = useClusterBaseInfo(); + const healthcheckPreviewAutorefreshDisabled = name === 'ydb_ru'; + const { currentData: data, isFetching, @@ -45,7 +52,10 @@ export function HealthcheckPreview(props: HealthcheckPreviewProps) { } = healthcheckApi.useGetHealthcheckInfoQuery( {database: tenantName}, { - pollingInterval: autoRefreshInterval, + //FIXME https://github.com/ydb-platform/ydb-embedded-ui/issues/1889 + pollingInterval: healthcheckPreviewAutorefreshDisabled + ? undefined + : autoRefreshInterval, }, ); @@ -56,6 +66,22 @@ export function HealthcheckPreview(props: HealthcheckPreviewProps) {
{i18n('title.healthcheck')}
+ {/* FIXME https://github.com/ydb-platform/ydb-embedded-ui/issues/1889 */} + {autoRefreshInterval && healthcheckPreviewAutorefreshDisabled ? ( + + {() => ( + + )} + + ) : null}
);