ivanmorozov333 1 год назад
Родитель
Сommit
912fd77ac9

+ 1 - 0
ydb/core/kqp/gateway/behaviour/tablestore/operations/ya.make

@@ -14,6 +14,7 @@ SRCS(
 PEERDIR(
     ydb/services/metadata/manager
     ydb/core/formats/arrow/serializer
+    ydb/core/tx/columnshard/engines/scheme/statistics/abstract
     ydb/core/kqp/gateway/utils
     ydb/core/protos
 )

+ 3 - 6
ydb/core/tx/columnshard/blobs_action/abstract/storage.h

@@ -10,10 +10,7 @@
 #include <ydb/core/tx/columnshard/data_sharing/manager/shared_blobs.h>
 
 #include <ydb/library/accessor/accessor.h>
-
-namespace NKikimr::NColumnShard {
-class TTiersManager;
-}
+#include <ydb/core/tx/tiering/abstract/manager.h>
 
 namespace NKikimr::NOlap {
 
@@ -46,7 +43,7 @@ protected:
         return true;
     }
 
-    virtual void DoOnTieringModified(const std::shared_ptr<NColumnShard::TTiersManager>& tiers) = 0;
+    virtual void DoOnTieringModified(const std::shared_ptr<NColumnShard::ITiersManager>& tiers) = 0;
     virtual TString DoDebugString() const {
         return "";
     }
@@ -79,7 +76,7 @@ public:
     bool Load(IBlobManagerDb& dbBlobs) {
         return DoLoad(dbBlobs);
     }
-    void OnTieringModified(const std::shared_ptr<NColumnShard::TTiersManager>& tiers) {
+    void OnTieringModified(const std::shared_ptr<NColumnShard::ITiersManager>& tiers) {
         return DoOnTieringModified(tiers);
     }
 

+ 2 - 2
ydb/core/tx/columnshard/blobs_action/abstract/storages_manager.cpp

@@ -32,9 +32,9 @@ std::shared_ptr<NKikimr::NOlap::IBlobsStorageOperator> IStoragesManager::GetOper
     return GetOperatorGuarantee(storageId);
 }
 
-void IStoragesManager::OnTieringModified(const std::shared_ptr<NColumnShard::TTiersManager>& tiers) {
+void IStoragesManager::OnTieringModified(const std::shared_ptr<NColumnShard::ITiersManager>& tiers) {
     for (auto&& i : tiers->GetManagers()) {
-        GetOperatorGuarantee(i.second.GetTierName())->OnTieringModified(tiers);
+        GetOperatorGuarantee(i.first)->OnTieringModified(tiers);
     }
 }
 

+ 1 - 1
ydb/core/tx/columnshard/blobs_action/abstract/storages_manager.h

@@ -54,7 +54,7 @@ public:
         return Constructed;
     }
 
-    void OnTieringModified(const std::shared_ptr<NColumnShard::TTiersManager>& tiers);
+    void OnTieringModified(const std::shared_ptr<NColumnShard::ITiersManager>& tiers);
 
     std::shared_ptr<IBlobsStorageOperator> GetOperator(const TString& storageIdExt);
     std::shared_ptr<IBlobsStorageOperator> GetOperatorGuarantee(const TString& storageIdExt);

+ 1 - 1
ydb/core/tx/columnshard/blobs_action/abstract/ya.make

@@ -17,7 +17,7 @@ PEERDIR(
     ydb/core/protos
     contrib/libs/apache/arrow
     ydb/core/tablet_flat
-    ydb/core/tx/tiering
+    ydb/core/tx/tiering/abstract
     ydb/core/tx/columnshard/data_sharing/protos
     ydb/core/tx/columnshard/blobs_action/events
     ydb/core/tx/columnshard/blobs_action/protos

+ 1 - 1
ydb/core/tx/columnshard/blobs_action/bs/storage.h

@@ -22,7 +22,7 @@ protected:
     virtual bool DoLoad(IBlobManagerDb& dbBlobs) override {
         return Manager->LoadState(dbBlobs, GetSelfTabletId());
     }
-    virtual void DoOnTieringModified(const std::shared_ptr<NColumnShard::TTiersManager>& /*tiers*/) override {
+    virtual void DoOnTieringModified(const std::shared_ptr<NColumnShard::ITiersManager>& /*tiers*/) override {
         return;
     }
 

+ 1 - 1
ydb/core/tx/columnshard/blobs_action/tier/storage.cpp

@@ -88,7 +88,7 @@ TOperator::TOperator(const TString& storageId, const TActorId& shardActorId, con
     InitNewExternalOperator();
 }
 
-void TOperator::DoOnTieringModified(const std::shared_ptr<NColumnShard::TTiersManager>& tiers) {
+void TOperator::DoOnTieringModified(const std::shared_ptr<NColumnShard::ITiersManager>& tiers) {
     auto* tierManager = tiers->GetManagerOptional(TBase::GetStorageId());
     if (tierManager) {
         InitNewExternalOperator(tierManager);

+ 1 - 1
ydb/core/tx/columnshard/blobs_action/tier/storage.h

@@ -32,7 +32,7 @@ protected:
     virtual std::shared_ptr<IBlobsReadingAction> DoStartReadingAction() override;
     virtual std::shared_ptr<IBlobsGCAction> DoStartGCAction(const std::shared_ptr<TRemoveGCCounters>& counters) const override;
     virtual bool DoLoad(IBlobManagerDb& dbBlobs) override;
-    virtual void DoOnTieringModified(const std::shared_ptr<NColumnShard::TTiersManager>& tiers) override;
+    virtual void DoOnTieringModified(const std::shared_ptr<NColumnShard::ITiersManager>& tiers) override;
 
 public:
     TOperator(const TString& storageId, const NColumnShard::TColumnShard& shard, const std::shared_ptr<NDataSharing::TStorageSharedBlobsManager>& storageSharedBlobsManager);

+ 3 - 3
ydb/core/tx/columnshard/engines/portions/with_blobs.cpp

@@ -142,7 +142,7 @@ NKikimr::NOlap::TPortionInfoWithBlobs TPortionInfoWithBlobs::BuildByBlobs(std::v
         return l.GetAddress() < r.GetAddress();
     };
     std::sort(result.GetPortionInfo().Records.begin(), result.GetPortionInfo().Records.end(), pred);
-    schema->GetIndexInfo().FillStatistics(result);
+    result.FillStatistics(schema->GetIndexInfo());
     return result;
 }
 
@@ -222,9 +222,9 @@ bool TPortionInfoWithBlobs::ExtractColumnChunks(const ui32 columnId, std::vector
     return true;
 }
 
-void TPortionInfoWithBlobs::FillStatistics(const std::map<NStatistics::TIdentifier, NStatistics::TOperatorContainer>& operators, const TIndexInfo& index) {
+void TPortionInfoWithBlobs::FillStatistics(const TIndexInfo& index) {
     NStatistics::TPortionStorage storage;
-    for (auto&& i : operators) {
+    for (auto&& i : index.GetStatistics()) {
         THashMap<ui32, std::vector<std::shared_ptr<IPortionDataChunk>>> data;
         for (auto&& entityId : i.second->GetEntityIds()) {
             data.emplace(entityId, GetEntityChunks(entityId));

+ 1 - 1
ydb/core/tx/columnshard/engines/portions/with_blobs.h

@@ -108,7 +108,7 @@ public:
         return PortionInfo.BlobsBytes();
     }
 
-    void FillStatistics(const std::map<NStatistics::TIdentifier, NStatistics::TOperatorContainer>& operators, const TIndexInfo& index);
+    void FillStatistics(const TIndexInfo& index);
 
     static TPortionInfoWithBlobs BuildByBlobs(std::vector<TSplittedBlob>&& chunks,
         std::shared_ptr<arrow::RecordBatch> batch, const ui64 granule, const TSnapshot& snapshot, const std::shared_ptr<IStoragesManager>& operators,

Некоторые файлы не были показаны из-за большого количества измененных файлов