Skip to content

Commit 0b6032a

Browse files
Merge ce5d02e into 34ddb63
2 parents 34ddb63 + ce5d02e commit 0b6032a

File tree

1 file changed

+20
-17
lines changed

1 file changed

+20
-17
lines changed

ydb/core/viewer/json_hotkeys.h

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -80,26 +80,29 @@ class TJsonHotkeys : public TViewerPipeClient<TJsonHotkeys> {
8080

8181
void Handle(TEvSchemeShard::TEvDescribeSchemeResult::TPtr& ev) {
8282
DescribeResult = ev->Release();
83-
const auto& pathDescription = DescribeResult->GetRecord().GetPathDescription();
84-
const auto& partitions = pathDescription.GetTablePartitions();
85-
const auto& metrics = pathDescription.GetTablePartitionMetrics();
86-
TVector<std::pair<ui64, int>> tabletsOrder;
87-
88-
for (int i = 0; i < metrics.size(); ++i) {
89-
tabletsOrder.emplace_back(metrics.Get(i).GetCPU(), i);
90-
}
83+
const auto& pbRecord(DescribeResult->GetRecord());
84+
if (pbRecord.HasPathDescription()) {
85+
const auto& pathDescription = pbRecord.GetPathDescription();
86+
const auto& partitions = pathDescription.GetTablePartitions();
87+
const auto& metrics = pathDescription.GetTablePartitionMetrics();
88+
TVector<std::pair<ui64, int>> tabletsOrder;
89+
90+
for (int i = 0; i < metrics.size(); ++i) {
91+
tabletsOrder.emplace_back(metrics.Get(i).GetCPU(), i);
92+
}
9193

92-
Sort(tabletsOrder, std::greater<std::pair<ui64, int>>());
93-
ui32 tablets = (ui32) std::max(1, (int) std::ceil(PollingFactor * tabletsOrder.size()));
94+
Sort(tabletsOrder, std::greater<std::pair<ui64, int>>());
95+
ui32 tablets = (ui32) std::max(1, (int) std::ceil(PollingFactor * tabletsOrder.size()));
9496

95-
for (ui32 i = 0; i < tablets; ++i) {
96-
THolder<TEvDataShard::TEvGetDataHistogramRequest> request = MakeHolder<TEvDataShard::TEvGetDataHistogramRequest>();
97-
if (EnableSampling) {
98-
request->Record.SetCollectKeySampleMs(30000); // 30 sec
97+
for (ui32 i = 0; i < tablets; ++i) {
98+
THolder<TEvDataShard::TEvGetDataHistogramRequest> request = MakeHolder<TEvDataShard::TEvGetDataHistogramRequest>();
99+
if (EnableSampling) {
100+
request->Record.SetCollectKeySampleMs(30000); // 30 sec
101+
}
102+
request->Record.SetActualData(true);
103+
ui64 datashardId = partitions.Get(tabletsOrder[i].second).GetDatashardId();
104+
SendRequestToPipe(ConnectTabletPipe(datashardId), request.Release());
99105
}
100-
request->Record.SetActualData(true);
101-
ui64 datashardId = partitions.Get(tabletsOrder[i].second).GetDatashardId();
102-
SendRequestToPipe(ConnectTabletPipe(datashardId), request.Release());
103106
}
104107

105108
RequestDone();

0 commit comments

Comments
 (0)