summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornsofya <[email protected]>2023-09-06 16:27:42 +0300
committernsofya <[email protected]>2023-09-06 17:00:20 +0300
commit561d3102e143530b7b4f8e9e8ef1d71479f1ebf0 (patch)
tree5b2c15175a4e2cb32285b5a5fafea57c344bd04b
parent6cf2e0df3b3ab37c820a6b4f42ba7542a6af06f0 (diff)
Fix dependencies
-rw-r--r--ydb/core/tx/columnshard/blob.h13
-rw-r--r--ydb/core/tx/columnshard/blob_manager.h4
-rw-r--r--ydb/core/tx/columnshard/engines/writer/write_controller.h1
-rw-r--r--ydb/core/tx/columnshard/inflight_request_tracker.h14
-rw-r--r--ydb/core/tx/ev_write/columnshard_splitter.h1
5 files changed, 18 insertions, 15 deletions
diff --git a/ydb/core/tx/columnshard/blob.h b/ydb/core/tx/columnshard/blob.h
index f46c542ec83..0ad18d57540 100644
--- a/ydb/core/tx/columnshard/blob.h
+++ b/ydb/core/tx/columnshard/blob.h
@@ -310,6 +310,19 @@ struct TBlobRange {
}
};
+class IBlobInUseTracker {
+protected:
+ ~IBlobInUseTracker() = default;
+
+public:
+ // Marks the blob as "in use (or no longer in use) by an in-flight request", increments (or decrements)
+ // it's ref count. This will prevent the blob from beeing physically deleted when DeleteBlob() is called
+ // until all the references are released.
+ // NOTE: this ref counts are in-memory only, so the blobs can be deleted if tablet restarts
+ virtual bool SetBlobInUse(const NOlap::TUnifiedBlobId& blobId, bool inUse) = 0;
+ virtual bool BlobInUse(const NOlap::TUnifiedBlobId& blobId) const = 0;
+};
+
// Expected blob lifecycle: EVICTING -> SELF_CACHED -> EXTERN <-> CACHED
enum class EEvictState : ui8 {
UNKNOWN = 0,
diff --git a/ydb/core/tx/columnshard/blob_manager.h b/ydb/core/tx/columnshard/blob_manager.h
index d537e351ebb..9d4852565ca 100644
--- a/ydb/core/tx/columnshard/blob_manager.h
+++ b/ydb/core/tx/columnshard/blob_manager.h
@@ -4,8 +4,8 @@
#include "counters/blobs_manager.h"
#include <ydb/core/tablet_flat/flat_executor.h>
-#include <ydb/core/tx/columnshard/inflight_request_tracker.h>
#include <ydb/core/util/backoff.h>
+#include <ydb/core/protos/tx_columnshard.pb.h>
#include <util/generic/string.h>
@@ -140,7 +140,7 @@ struct TBlobManagerCounters {
};
// The implementation of BlobManager that hides all GC-related details
-class TBlobManager : public IBlobManager, public IBlobExporter, public IBlobInUseTracker {
+class TBlobManager : public IBlobManager, public IBlobExporter, public NOlap::IBlobInUseTracker {
private:
static constexpr size_t BLOB_COUNT_TO_TRIGGER_GC_DEFAULT = 1000;
static constexpr ui64 GC_INTERVAL_SECONDS_DEFAULT = 60;
diff --git a/ydb/core/tx/columnshard/engines/writer/write_controller.h b/ydb/core/tx/columnshard/engines/writer/write_controller.h
index df8223739e7..9636b2ebde9 100644
--- a/ydb/core/tx/columnshard/engines/writer/write_controller.h
+++ b/ydb/core/tx/columnshard/engines/writer/write_controller.h
@@ -5,6 +5,7 @@
#include <library/cpp/actors/core/actor.h>
#include <ydb/core/tx/columnshard/blob_manager.h>
+#include <ydb/core/tx/columnshard/defs.h>
namespace NKikimr::NColumnShard {
diff --git a/ydb/core/tx/columnshard/inflight_request_tracker.h b/ydb/core/tx/columnshard/inflight_request_tracker.h
index 6edf647be93..261cdf3bc31 100644
--- a/ydb/core/tx/columnshard/inflight_request_tracker.h
+++ b/ydb/core/tx/columnshard/inflight_request_tracker.h
@@ -5,20 +5,8 @@
namespace NKikimr::NColumnShard {
-class IBlobInUseTracker {
-protected:
- ~IBlobInUseTracker() = default;
-
-public:
- // Marks the blob as "in use (or no longer in use) by an in-flight request", increments (or decrements)
- // it's ref count. This will prevent the blob from beeing physically deleted when DeleteBlob() is called
- // until all the references are released.
- // NOTE: this ref counts are in-memory only, so the blobs can be deleted if tablet restarts
- virtual bool SetBlobInUse(const NOlap::TUnifiedBlobId& blobId, bool inUse) = 0;
- virtual bool BlobInUse(const NOlap::TUnifiedBlobId& blobId) const = 0;
-};
-
using NOlap::TReadMetadata;
+using NOlap::IBlobInUseTracker;
class TInFlightReadsTracker {
public:
diff --git a/ydb/core/tx/ev_write/columnshard_splitter.h b/ydb/core/tx/ev_write/columnshard_splitter.h
index fed6f40c92e..dc0a163cde0 100644
--- a/ydb/core/tx/ev_write/columnshard_splitter.h
+++ b/ydb/core/tx/ev_write/columnshard_splitter.h
@@ -4,6 +4,7 @@
#include <ydb/core/tx/sharding/sharding.h>
#include <ydb/core/tx/columnshard/columnshard.h>
+#include <ydb/core/formats/arrow/size_calcer.h>
#include <ydb/core/formats/arrow/arrow_helpers.h>