summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorazevaykin <[email protected]>2024-08-29 15:28:47 +0300
committerGitHub <[email protected]>2024-08-29 15:28:47 +0300
commit13f7cbdf2df0a07246c2ee76b828daa108ccd879 (patch)
treee650643d8f461bbcbdced30761416100b14d4390
parent1e1d882ec03da28b2b1ad627b31bf121a8f5758f (diff)
Statistics: disable datashard traversal (#8402)
-rw-r--r--ydb/core/statistics/aggregator/aggregator_impl.cpp12
-rw-r--r--ydb/core/statistics/aggregator/ut/ut_analyze_datashard.cpp6
-rw-r--r--ydb/core/statistics/aggregator/ut/ut_traverse_datashard.cpp16
3 files changed, 22 insertions, 12 deletions
diff --git a/ydb/core/statistics/aggregator/aggregator_impl.cpp b/ydb/core/statistics/aggregator/aggregator_impl.cpp
index b49ceb24589..2c9c1108515 100644
--- a/ydb/core/statistics/aggregator/aggregator_impl.cpp
+++ b/ydb/core/statistics/aggregator/aggregator_impl.cpp
@@ -550,6 +550,9 @@ void TStatisticsAggregator::Resolve() {
}
void TStatisticsAggregator::ScanNextDatashardRange() {
+ // Datashard traversal is temporary disabled
+ Y_FAIL();
+
if (DatashardRanges.empty()) {
SaveStatisticsToTable();
return;
@@ -699,6 +702,7 @@ void TStatisticsAggregator::ScheduleNextTraversal(NIceDb::TNiceDb& db) {
}
TraversalPathId = pathId;
+ TraversalStartTime = TInstant::Now();
std::optional<bool> isColumnTable = IsColumnTable(pathId);
if (!isColumnTable){
@@ -706,6 +710,13 @@ void TStatisticsAggregator::ScheduleNextTraversal(NIceDb::TNiceDb& db) {
return;
}
+ // Datashard traversal is temporary disabled
+ if (!*isColumnTable) {
+ SA_LOG_D("[" << TabletID() << "] ScheduleNextTraversal. Skip traversal for datashard table " << pathId);
+ DeleteStatisticsFromTable();
+ return;
+ }
+
TraversalIsColumnTable = *isColumnTable;
SA_LOG_D("[" << TabletID() << "] Start "
@@ -716,7 +727,6 @@ void TStatisticsAggregator::ScheduleNextTraversal(NIceDb::TNiceDb& db) {
}
void TStatisticsAggregator::StartTraversal(NIceDb::TNiceDb& db) {
- TraversalStartTime = TInstant::Now();
PersistTraversal(db);
TraversalStartKey = TSerializedCellVec();
diff --git a/ydb/core/statistics/aggregator/ut/ut_analyze_datashard.cpp b/ydb/core/statistics/aggregator/ut/ut_analyze_datashard.cpp
index 76677748229..4c1bf7a7d4e 100644
--- a/ydb/core/statistics/aggregator/ut/ut_analyze_datashard.cpp
+++ b/ydb/core/statistics/aggregator/ut/ut_analyze_datashard.cpp
@@ -38,7 +38,7 @@ Y_UNIT_TEST_SUITE(AnalyzeDatashard) {
Analyze(runtime, saTabletId, {{pathId}});
- ValidateCountMinDatashard(runtime, pathId);
+ ValidateCountMinDatashardAbsense(runtime, pathId);
}
Y_UNIT_TEST(AnalyzeTwoTables) {
@@ -64,8 +64,8 @@ Y_UNIT_TEST_SUITE(AnalyzeDatashard) {
Analyze(runtime, saTabletId1, {pathId1, pathId2});
- ValidateCountMinDatashard(runtime, pathId1);
- ValidateCountMinDatashard(runtime, pathId2);
+ ValidateCountMinDatashardAbsense(runtime, pathId1);
+ ValidateCountMinDatashardAbsense(runtime, pathId2);
}
diff --git a/ydb/core/statistics/aggregator/ut/ut_traverse_datashard.cpp b/ydb/core/statistics/aggregator/ut/ut_traverse_datashard.cpp
index cab2ef533c1..37bba99f471 100644
--- a/ydb/core/statistics/aggregator/ut/ut_traverse_datashard.cpp
+++ b/ydb/core/statistics/aggregator/ut/ut_traverse_datashard.cpp
@@ -34,7 +34,7 @@ Y_UNIT_TEST_SUITE(TraverseDatashard) {
runtime.SimulateSleep(TDuration::Seconds(60));
auto pathId = ResolvePathId(runtime, "/Root/Database/Table");
- ValidateCountMinDatashard(runtime, pathId);
+ ValidateCountMinDatashardAbsense(runtime, pathId);
}
Y_UNIT_TEST(TraverseTwoTables) {
@@ -54,8 +54,8 @@ Y_UNIT_TEST_SUITE(TraverseDatashard) {
auto pathId1 = ResolvePathId(runtime, "/Root/Database/Table1");
auto pathId2 = ResolvePathId(runtime, "/Root/Database/Table2");
- ValidateCountMinDatashard(runtime, pathId1);
- ValidateCountMinDatashard(runtime, pathId2);
+ ValidateCountMinDatashardAbsense(runtime, pathId1);
+ ValidateCountMinDatashardAbsense(runtime, pathId2);
}
Y_UNIT_TEST(TraverseOneTableServerless) {
@@ -85,7 +85,7 @@ Y_UNIT_TEST_SUITE(TraverseDatashard) {
runtime.SimulateSleep(TDuration::Seconds(60));
auto pathId = ResolvePathId(runtime, "/Root/Serverless/Table");
- ValidateCountMinDatashard(runtime, pathId);
+ ValidateCountMinDatashardAbsense(runtime, pathId);
}
Y_UNIT_TEST(TraverseTwoTablesServerless) {
@@ -117,8 +117,8 @@ Y_UNIT_TEST_SUITE(TraverseDatashard) {
auto pathId1 = ResolvePathId(runtime, "/Root/Serverless/Table1");
auto pathId2 = ResolvePathId(runtime, "/Root/Serverless/Table2");
- ValidateCountMinDatashard(runtime, pathId1);
- ValidateCountMinDatashard(runtime, pathId2);
+ ValidateCountMinDatashardAbsense(runtime, pathId1);
+ ValidateCountMinDatashardAbsense(runtime, pathId2);
}
Y_UNIT_TEST(TraverseTwoTablesTwoServerlessDbs) {
@@ -151,8 +151,8 @@ Y_UNIT_TEST_SUITE(TraverseDatashard) {
auto pathId1 = ResolvePathId(runtime, "/Root/Serverless1/Table1");
auto pathId2 = ResolvePathId(runtime, "/Root/Serverless2/Table2");
- ValidateCountMinDatashard(runtime, pathId1);
- ValidateCountMinDatashard(runtime, pathId2);
+ ValidateCountMinDatashardAbsense(runtime, pathId1);
+ ValidateCountMinDatashardAbsense(runtime, pathId2);
}
}