summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorstanly <[email protected]>2023-05-24 16:33:41 +0300
committerstanly <[email protected]>2023-05-24 16:33:41 +0300
commit5284e74c027f3cf50fc29ceb5fd3d43b4729921b (patch)
tree23d64159a8c1f338b5e41d0e80b796c6c8271670
parent4edcb7784e89987328828200ed0a151880bf8cb3 (diff)
using make_shared for TChanges back again
-rw-r--r--ydb/core/tx/columnshard/engines/column_engine_logs.h29
1 files changed, 16 insertions, 13 deletions
diff --git a/ydb/core/tx/columnshard/engines/column_engine_logs.h b/ydb/core/tx/columnshard/engines/column_engine_logs.h
index c16a2397a6c..6736a395c5a 100644
--- a/ydb/core/tx/columnshard/engines/column_engine_logs.h
+++ b/ydb/core/tx/columnshard/engines/column_engine_logs.h
@@ -49,10 +49,8 @@ public:
};
class TChanges : public TColumnEngineChanges {
- private:
- TChanges(TColumnEngineChanges::EType type, const TMark& defaultMark, const TCompactionLimits& limits)
- : TColumnEngineChanges(type, limits)
- , DefaultMark(defaultMark) {}
+ struct TPrivateTag {
+ };
public:
struct TSrcGranule {
@@ -65,34 +63,39 @@ public:
{}
};
+ TChanges(TColumnEngineChanges::EType type, const TMark& defaultMark, const TCompactionLimits& limits, const TPrivateTag&)
+ : TColumnEngineChanges(type, limits)
+ , DefaultMark(defaultMark)
+ {
+ }
+
static std::shared_ptr<TChanges> BuildInsertChanges(const TMark& defaultMark,
std::vector<NOlap::TInsertedData>&& blobsToIndex, const TSnapshot& initSnapshot,
const TCompactionLimits& limits) {
- std::shared_ptr<TChanges> changes(new TChanges(TColumnEngineChanges::INSERT, defaultMark, limits));
- changes->DataToIndex = blobsToIndex;
+ auto changes = std::make_shared<TChanges>(TColumnEngineChanges::INSERT, defaultMark, limits, TPrivateTag());
+ changes->DataToIndex = std::move(blobsToIndex);
changes->InitSnapshot = initSnapshot;
- return std::move(changes);
+ return changes;
}
static std::shared_ptr<TChanges> BuildCompactionChanges(const TMark& defaultMark,
std::unique_ptr<TCompactionInfo>&& info,
const TCompactionLimits& limits,
const TSnapshot& initSnapshot) {
- std::shared_ptr<TChanges> changes(new TChanges(TColumnEngineChanges::COMPACTION, defaultMark, limits));
+ auto changes = std::make_shared<TChanges>(TColumnEngineChanges::COMPACTION, defaultMark, limits, TPrivateTag());
changes->CompactionInfo = std::move(info);
changes->InitSnapshot = initSnapshot;
- return std::move(changes);
+ return changes;
}
static std::shared_ptr<TChanges> BuildClenupChanges(const TMark& defaultMark, const TSnapshot& initSnapshot, const TCompactionLimits& limits) {
- std::shared_ptr<TChanges> changes(new TChanges(TColumnEngineChanges::CLEANUP, defaultMark, limits));
+ auto changes = std::make_shared<TChanges>(TColumnEngineChanges::CLEANUP, defaultMark, limits, TPrivateTag());
changes->InitSnapshot = initSnapshot;
- return std::move(changes);
+ return changes;
}
static std::shared_ptr<TChanges> BuildTtlChanges(const TMark& defaultMark) {
- std::shared_ptr<TChanges> changes(new TChanges(TColumnEngineChanges::TTL, defaultMark, TCompactionLimits()));
- return std::move(changes);
+ return std::make_shared<TChanges>(TColumnEngineChanges::TTL, defaultMark, TCompactionLimits(), TPrivateTag());
}
bool AddPathIfNotExists(ui64 pathId) {