diff options
| author | nsofya <[email protected]> | 2024-01-12 09:49:22 +0300 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-01-12 09:49:22 +0300 |
| commit | c683f071075a99ff415845f813694831deb4c0af (patch) | |
| tree | 3ea3f1582054de6c91a141e7989a769d23783db0 | |
| parent | db4e90915f31cde567461a77d468b4b4a6a0c15e (diff) | |
Run OnTieringModified only once on tablet initialization (#951)
| -rw-r--r-- | ydb/core/tx/columnshard/columnshard.cpp | 3 | ||||
| -rw-r--r-- | ydb/core/tx/columnshard/columnshard_impl.cpp | 6 | ||||
| -rw-r--r-- | ydb/core/tx/columnshard/columnshard_impl.h | 2 |
3 files changed, 7 insertions, 4 deletions
diff --git a/ydb/core/tx/columnshard/columnshard.cpp b/ydb/core/tx/columnshard/columnshard.cpp index 5a5c56105e2..ac3f521b8b7 100644 --- a/ydb/core/tx/columnshard/columnshard.cpp +++ b/ydb/core/tx/columnshard/columnshard.cpp @@ -36,8 +36,9 @@ void TColumnShard::SwitchToWork(const TActorContext& ctx) { AFL_INFO(NKikimrServices::TX_COLUMNSHARD)("event", "initialize_shard")("step", "SwitchToWork"); for (auto&& i : TablesManager.GetTables()) { - ActivateTiering(i.first, i.second.GetTieringUsage()); + ActivateTiering(i.first, i.second.GetTieringUsage(), true); } + OnTieringModified(); Become(&TThis::StateWork); SignalTabletActive(ctx); diff --git a/ydb/core/tx/columnshard/columnshard_impl.cpp b/ydb/core/tx/columnshard/columnshard_impl.cpp index 658b7c67c4a..6869cbef8cc 100644 --- a/ydb/core/tx/columnshard/columnshard_impl.cpp +++ b/ydb/core/tx/columnshard/columnshard_impl.cpp @@ -947,7 +947,7 @@ void TColumnShard::Handle(NMetadata::NProvider::TEvRefreshSubscriberData::TPtr& Tiers->TakeConfigs(ev->Get()->GetSnapshot(), nullptr); } -void TColumnShard::ActivateTiering(const ui64 pathId, const TString& useTiering) { +void TColumnShard::ActivateTiering(const ui64 pathId, const TString& useTiering, const bool onTabletInit) { Y_ABORT_UNLESS(!!Tiers); if (!!Tiers) { if (useTiering) { @@ -956,7 +956,9 @@ void TColumnShard::ActivateTiering(const ui64 pathId, const TString& useTiering) Tiers->DisablePathId(pathId); } } - OnTieringModified(); + if (!onTabletInit) { + OnTieringModified(); + } } void TColumnShard::Enqueue(STFUNC_SIG) { diff --git a/ydb/core/tx/columnshard/columnshard_impl.h b/ydb/core/tx/columnshard/columnshard_impl.h index 65148356043..933112a594b 100644 --- a/ydb/core/tx/columnshard/columnshard_impl.h +++ b/ydb/core/tx/columnshard/columnshard_impl.h @@ -206,7 +206,7 @@ class TColumnShard TabletCounters->Percentile()[counter].IncrementFor(latency.MicroSeconds()); } - void ActivateTiering(const ui64 pathId, const TString& useTiering); + void ActivateTiering(const ui64 pathId, const TString& useTiering, const bool onTabletInit = false); void OnTieringModified(); public: enum class EOverloadStatus { |
