diff --git a/src/containers/Tablets/Tablets.tsx b/src/containers/Tablets/Tablets.tsx index bd64b8fe36..bef34e38af 100644 --- a/src/containers/Tablets/Tablets.tsx +++ b/src/containers/Tablets/Tablets.tsx @@ -4,12 +4,28 @@ import {skipToken} from '@reduxjs/toolkit/query'; import {isNil} from 'lodash'; import {selectTabletsWithFqdn, tabletsApi} from '../../store/reducers/tablets'; +import {ETabletState} from '../../types/api/tablet'; import type {TabletsApiRequestParams} from '../../types/store/tablets'; import {valueIsDefined} from '../../utils'; import {useAutoRefreshInterval, useTypedSelector} from '../../utils/hooks'; import {TabletsTable} from './TabletsTable'; +const activeStatuses: ETabletState[] = [ + ETabletState.Created, + ETabletState.ResolveStateStorage, + ETabletState.Candidate, + ETabletState.BlockBlobStorage, + ETabletState.RebuildGraph, + ETabletState.WriteZeroEntry, + ETabletState.Restored, + ETabletState.Discover, + ETabletState.Lock, + ETabletState.Active, + ETabletState.ResolveLeader, + ETabletState.Terminating, +]; + interface TabletsProps { path?: string; database?: string; @@ -34,7 +50,7 @@ export function Tablets({ const [autoRefreshInterval] = useAutoRefreshInterval(); let params: TabletsApiRequestParams = {}; - const filter = onlyActive ? `(State!=Dead)` : undefined; + const filter = onlyActive ? `(State=[${activeStatuses.join(',')}])` : undefined; const schemaPathParam = React.useMemo(() => { if (!isNil(path) && !isNil(databaseFullPath)) { diff --git a/src/types/api/tablet.ts b/src/types/api/tablet.ts index 7d5f49175e..891afe6eb7 100644 --- a/src/types/api/tablet.ts +++ b/src/types/api/tablet.ts @@ -118,6 +118,7 @@ export enum ETabletState { 'ResolveLeader' = 'ResolveLeader', 'Deleted' = 'Deleted', 'Stopped' = 'Stopped', + 'Terminating' = 'Terminating', } interface TBoundChannel { diff --git a/src/utils/tablet.ts b/src/utils/tablet.ts index 9dea327fac..369283d12a 100644 --- a/src/utils/tablet.ts +++ b/src/utils/tablet.ts @@ -18,6 +18,7 @@ const tabletStateToColorState: Record = { [ETabletState.Stopped]: EFlag.Yellow, [ETabletState.ResolveLeader]: EFlag.Yellow, [ETabletState.RebuildGraph]: EFlag.Yellow, + [ETabletState.Terminating]: EFlag.Yellow, [ETabletState.Deleted]: EFlag.Green, [ETabletState.Active]: EFlag.Green,