11#pragma once
2+ #include " gc.h"
3+ #include " read.h"
24#include " remove.h"
35#include " write.h"
4- #include " read.h"
5- #include " gc.h"
66
77#include < ydb/core/tx/columnshard/blobs_action/blob_manager_db.h>
8- #include < ydb/core/tx/columnshard/blobs_action/counters/storage.h>
98#include < ydb/core/tx/columnshard/blobs_action/counters/remove_gc.h>
9+ #include < ydb/core/tx/columnshard/blobs_action/counters/storage.h>
1010#include < ydb/core/tx/columnshard/data_sharing/manager/shared_blobs.h>
11+ #include < ydb/core/tx/tiering/abstract/manager.h>
1112
1213#include < ydb/library/accessor/accessor.h>
13- #include < ydb/core/tx/tiering/abstract/manager.h>
1414
1515namespace NKikimr ::NOlap {
1616
1717class TCommonBlobsTracker : public IBlobInUseTracker {
1818private:
1919 // List of blobs that are used by in-flight requests
2020 THashMap<TUnifiedBlobId, i64 > BlobsUseCount;
21+
2122protected:
2223 virtual bool DoUseBlob (const TUnifiedBlobId& blobId) override ;
2324 virtual bool DoFreeBlob (const TUnifiedBlobId& blobId) override ;
25+
2426public:
2527 virtual bool IsBlobInUsage (const NOlap::TUnifiedBlobId& blobId) const override ;
2628 virtual void OnBlobFree (const TUnifiedBlobId& blobId) = 0;
@@ -34,8 +36,10 @@ class IBlobsStorageOperator {
3436 YDB_READONLY (bool , Stopped, false );
3537 std::shared_ptr<NBlobOperations::TStorageCounters> Counters;
3638 YDB_ACCESSOR_DEF (std::shared_ptr<NDataSharing::TStorageSharedBlobsManager>, SharedBlobs);
39+
3740protected:
38- virtual std::shared_ptr<IBlobsDeclareRemovingAction> DoStartDeclareRemovingAction (const std::shared_ptr<NBlobOperations::TRemoveDeclareCounters>& counters) = 0;
41+ virtual std::shared_ptr<IBlobsDeclareRemovingAction> DoStartDeclareRemovingAction (
42+ const std::shared_ptr<NBlobOperations::TRemoveDeclareCounters>& counters) = 0;
3943 virtual std::shared_ptr<IBlobsWritingAction> DoStartWritingAction () = 0;
4044 virtual std::shared_ptr<IBlobsReadingAction> DoStartReadingAction () = 0;
4145 virtual bool DoLoad (IBlobManagerDb& dbBlobs) = 0;
@@ -67,16 +71,13 @@ class IBlobsStorageOperator {
6771 IBlobsStorageOperator (const TString& storageId, const std::shared_ptr<NDataSharing::TStorageSharedBlobsManager>& sharedBlobs)
6872 : SelfTabletId(sharedBlobs->GetSelfTabletId ())
6973 , StorageId(storageId)
70- , SharedBlobs(sharedBlobs)
71- {
74+ , SharedBlobs(sharedBlobs) {
7275 Counters = std::make_shared<NBlobOperations::TStorageCounters>(storageId);
7376 }
7477
7578 void Stop ();
7679
77- const NSplitter::TSplitSettings& GetBlobSplitSettings () const {
78- return DoGetBlobSplitSettings ();
79- }
80+ const NSplitter::TSplitSettings& GetBlobSplitSettings () const ;
8081
8182 virtual TTabletsByBlob GetBlobsToDelete () const = 0;
8283 virtual bool HasToDelete (const TUnifiedBlobId& blobId, const TTabletId initiatorTabletId) const = 0;
@@ -120,7 +121,8 @@ class IBlobsStorageOperator {
120121 }
121122
122123 [[nodiscard]] std::shared_ptr<IBlobsGCAction> CreateGC () {
123- NActors::TLogContextGuard gLogging = NActors::TLogContextBuilder::Build (NKikimrServices::TX_COLUMNSHARD_BLOBS)(" storage_id" , GetStorageId ())(" tablet_id" , GetSelfTabletId ());
124+ NActors::TLogContextGuard gLogging = NActors::TLogContextBuilder::Build (NKikimrServices::TX_COLUMNSHARD_BLOBS)(
125+ " storage_id" , GetStorageId ())(" tablet_id" , GetSelfTabletId ());
124126 if (CurrentGCAction && CurrentGCAction->IsInProgress ()) {
125127 AFL_DEBUG (NKikimrServices::TX_COLUMNSHARD_BLOBS)(" event" , " gc_in_progress" );
126128 return nullptr ;
@@ -137,4 +139,4 @@ class IBlobsStorageOperator {
137139 virtual bool IsReady () const = 0;
138140};
139141
140- }
142+ } // namespace NKikimr::NOlap
0 commit comments