diff options
author | ivanmorozov <ivanmorozov@yandex-team.com> | 2023-10-23 11:29:28 +0300 |
---|---|---|
committer | ivanmorozov <ivanmorozov@yandex-team.com> | 2023-10-23 11:54:19 +0300 |
commit | a1e69eeebcd7f2be7c421e9f450d877f7660bc7a (patch) | |
tree | b42e0d1b2d1814bed52c7cee1b8a3514a857d890 | |
parent | c17de4eb2989b79e66589429b87b05d2c2e669da (diff) | |
download | ydb-a1e69eeebcd7f2be7c421e9f450d877f7660bc7a.tar.gz |
KIKIMR-19788: use period for guarantee indexation start
18 files changed, 83 insertions, 21 deletions
diff --git a/ydb/core/kqp/ut/olap/kqp_olap_ut.cpp b/ydb/core/kqp/ut/olap/kqp_olap_ut.cpp index 20ae3558d8..d5d788505a 100644 --- a/ydb/core/kqp/ut/olap/kqp_olap_ut.cpp +++ b/ydb/core/kqp/ut/olap/kqp_olap_ut.cpp @@ -1,6 +1,5 @@ #include <ydb/core/kqp/ut/common/kqp_ut_common.h> #include <ydb/public/sdk/cpp/client/draft/ydb_long_tx.h> -#include <ydb/public/sdk/cpp/client/ydb_query/client.h> #include <ydb/core/sys_view/service/query_history.h> #include <ydb/core/tx/columnshard/columnshard_ut_common.h> @@ -267,7 +266,7 @@ Y_UNIT_TEST_SUITE(KqpOlap) { }; TDistribution GetDistribution(const bool verbose = false) { - const TString selectQuery = "SELECT COUNT(*) as c, field FROM `" + TablePath + "` GROUP BY field ORDER BY field"; + const TString selectQuery = "PRAGMA Kikimr.OptUseFinalizeByKey='true';SELECT COUNT(*) as c, field FROM `" + TablePath + "` GROUP BY field ORDER BY field"; auto tableClient = KikimrRunner.GetTableClient(); auto rows = ExecuteScanQuery(tableClient, selectQuery, verbose); @@ -1342,8 +1341,7 @@ Y_UNIT_TEST_SUITE(KqpOlap) { } Y_UNIT_TEST(CheckEarlyFilterOnEmptySelect) { - auto settings = TKikimrSettings() - .SetWithSampleTables(false); + auto settings = TKikimrSettings().SetWithSampleTables(false); TKikimrRunner kikimr(settings); TLocalHelper(kikimr).CreateTestOlapTable(); @@ -1882,6 +1880,7 @@ Y_UNIT_TEST_SUITE(KqpOlap) { { TString query = R"( --!syntax_v1 + PRAGMA Kikimr.OptUseFinalizeByKey; SELECT level, COUNT(level) FROM `/Root/olapStore/olapTable` @@ -2119,6 +2118,7 @@ Y_UNIT_TEST_SUITE(KqpOlap) { if (!Pushdown) { queryFixed << "PRAGMA Kikimr.OptEnableOlapPushdown = \"false\";" << Endl; } + queryFixed << "PRAGMA Kikimr.OptUseFinalizeByKey;" << Endl; queryFixed << Query << Endl; Cerr << "REQUEST:\n" << queryFixed << Endl; @@ -3295,6 +3295,7 @@ Y_UNIT_TEST_SUITE(KqpOlap) { auto settings = TKikimrSettings() .SetWithSampleTables(false); TKikimrRunner kikimr(settings); + auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NYDBTest::NColumnShard::TController>(); static ui32 numKinds = 5; TLocalHelper(kikimr).CreateTestOlapTable(); @@ -3336,6 +3337,7 @@ Y_UNIT_TEST_SUITE(KqpOlap) { auto settings = TKikimrSettings() .SetWithSampleTables(false); TKikimrRunner kikimr(settings); + auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NYDBTest::NColumnShard::TController>(); static ui32 numKinds = 5; TLocalHelper(kikimr).CreateTestOlapTable("olapTable_1"); @@ -3396,6 +3398,7 @@ Y_UNIT_TEST_SUITE(KqpOlap) { Y_UNIT_TEST(StatsSysViewEnumStringBytes) { ui64 rawBytesPK1; ui64 bytesPK1; + auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NYDBTest::NColumnShard::TController>(); { auto settings = TKikimrSettings() .SetWithSampleTables(false); @@ -3704,6 +3707,7 @@ Y_UNIT_TEST_SUITE(KqpOlap) { .SetNodeCount(2); Tests::TServer::TPtr server = new Tests::TServer(settings); + auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NYDBTest::NColumnShard::TController>(); auto runtime = server->GetRuntime(); auto sender = runtime->AllocateEdgeActor(); @@ -3790,8 +3794,8 @@ Y_UNIT_TEST_SUITE(KqpOlap) { } Y_UNIT_TEST(StatsSysViewColumns) { - auto settings = TKikimrSettings() - .SetWithSampleTables(false); + auto settings = TKikimrSettings().SetWithSampleTables(false); + auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NYDBTest::NColumnShard::TController>(); TKikimrRunner kikimr(settings); static ui32 numKinds = 5; @@ -3850,9 +3854,9 @@ Y_UNIT_TEST_SUITE(KqpOlap) { } Y_UNIT_TEST(StatsSysViewRanges) { - auto settings = TKikimrSettings() - .SetWithSampleTables(false); + auto settings = TKikimrSettings().SetWithSampleTables(false); TKikimrRunner kikimr(settings); + auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NYDBTest::NColumnShard::TController>(); Tests::NCommon::TLoggerInit(kikimr).Initialize(); static ui32 numKinds = 5; @@ -3932,9 +3936,9 @@ Y_UNIT_TEST_SUITE(KqpOlap) { } Y_UNIT_TEST(StatsSysViewFilter) { - auto settings = TKikimrSettings() - .SetWithSampleTables(false); + auto settings = TKikimrSettings().SetWithSampleTables(false); TKikimrRunner kikimr(settings); + auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NYDBTest::NColumnShard::TController>(); TLocalHelper(kikimr.GetTestServer()).CreateTestOlapTable(); for (ui64 i = 0; i < 10; ++i) { @@ -3999,9 +4003,9 @@ Y_UNIT_TEST_SUITE(KqpOlap) { } Y_UNIT_TEST(StatsSysViewAggregation) { - auto settings = TKikimrSettings() - .SetWithSampleTables(false); + auto settings = TKikimrSettings().SetWithSampleTables(false); TKikimrRunner kikimr(settings); + auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NYDBTest::NColumnShard::TController>(); static ui32 numKinds = 5; TLocalHelper(kikimr.GetTestServer()).CreateTestOlapTable("olapTable_1"); diff --git a/ydb/core/tx/columnshard/columnshard_impl.cpp b/ydb/core/tx/columnshard/columnshard_impl.cpp index e30f6e32db..3173bebe08 100644 --- a/ydb/core/tx/columnshard/columnshard_impl.cpp +++ b/ydb/core/tx/columnshard/columnshard_impl.cpp @@ -769,8 +769,10 @@ void TColumnShard::SetupIndexation() { if (InsertTable->GetPathPriorities().size() && InsertTable->GetPathPriorities().rbegin()->first.GetCategory() == NOlap::TPathInfoIndexPriority::EIndexationPriority::PreventOverload) { force = true; } - if (!force && InsertTable->GetCountersCommitted().Bytes < TSettings::GuaranteeIndexationStartBytesLimit && - TMonotonic::Now() - BackgroundController.GetLastIndexationInstant() < TSettings::GuaranteeIndexationInterval) { + const ui64 bytesLimit = NYDBTest::TControllers::GetColumnShardController()->GetGuaranteeIndexationStartBytesLimit(TSettings::GuaranteeIndexationStartBytesLimit); + const TDuration durationLimit = NYDBTest::TControllers::GetColumnShardController()->GetGuaranteeIndexationInterval(TSettings::GuaranteeIndexationInterval); + if (!force && InsertTable->GetCountersCommitted().Bytes < bytesLimit && + TMonotonic::Now() < BackgroundController.GetLastIndexationInstant() + durationLimit) { AFL_DEBUG(NKikimrServices::TX_COLUMNSHARD)("event", "skip_indexation")("reason", "not_enough_data_and_too_frequency") ("insert_size", InsertTable->GetCountersCommitted().Bytes); return; diff --git a/ydb/core/tx/columnshard/columnshard_impl.h b/ydb/core/tx/columnshard/columnshard_impl.h index b5156cd838..c683b0a5c2 100644 --- a/ydb/core/tx/columnshard/columnshard_impl.h +++ b/ydb/core/tx/columnshard/columnshard_impl.h @@ -67,7 +67,7 @@ struct TSettings { static constexpr ui32 MAX_ACTIVE_COMPACTIONS = 1; static constexpr ui32 MAX_INDEXATIONS_TO_SKIP = 16; - static constexpr TDuration GuaranteeIndexationInterval = TDuration::Seconds(0); + static constexpr TDuration GuaranteeIndexationInterval = TDuration::Seconds(10); static constexpr i64 GuaranteeIndexationStartBytesLimit = (i64)5 * 1024 * 1024 * 1024; TControlWrapper BlobWriteGrouppingEnabled; diff --git a/ydb/core/tx/columnshard/engines/storage/optimizer/lbuckets/optimizer.h b/ydb/core/tx/columnshard/engines/storage/optimizer/lbuckets/optimizer.h index 57d7df3dae..330a426a53 100644 --- a/ydb/core/tx/columnshard/engines/storage/optimizer/lbuckets/optimizer.h +++ b/ydb/core/tx/columnshard/engines/storage/optimizer/lbuckets/optimizer.h @@ -6,6 +6,7 @@ #include <ydb/core/tx/columnshard/engines/portions/portion_info.h> #include <ydb/core/tx/columnshard/blobs_action/abstract/storages_manager.h> #include <ydb/core/tx/columnshard/engines/changes/general_compaction.h> +#include <ydb/core/tx/columnshard/hooks/abstract/abstract.h> #include <ydb/library/accessor/accessor.h> #include <util/generic/hash.h> @@ -15,7 +16,12 @@ namespace NKikimr::NOlap::NStorageOptimizer::NBuckets { static const ui64 SmallPortionDetectSizeLimit = 1 << 20; -static const TDuration CommonFreshnessCheckDuration = TDuration::Seconds(300); + +TDuration GetCommonFreshnessCheckDuration() { + static const TDuration CommonFreshnessCheckDuration = TDuration::Seconds(300); + return NYDBTest::TControllers::GetColumnShardController()->GetOptimizerFreshnessCheckDuration(CommonFreshnessCheckDuration); +} + class TSimplePortionsGroupInfo { private: YDB_READONLY(i64, Bytes, 0); @@ -77,7 +83,7 @@ private: std::map<TInstant, THashMap<ui64, std::shared_ptr<TPortionInfo>>> Futures; TSimplePortionsGroupInfo BucketInfo; std::shared_ptr<TCounters> Counters; - const TDuration FutureDetector = CommonFreshnessCheckDuration; + const TDuration FutureDetector; bool AddActual(const std::shared_ptr<TPortionInfo>& portion) { if (Actuals.emplace(portion->GetPortionId(), portion).second) { BucketInfo.AddPortion(portion); @@ -604,7 +610,7 @@ public: TPortionsBucket(const std::shared_ptr<TPortionInfo>& portion, const std::shared_ptr<TCounters>& counters) : MainPortion(portion) , Counters(counters) - , Others(Counters, CommonFreshnessCheckDuration) + , Others(Counters, GetCommonFreshnessCheckDuration()) { if (MainPortion) { Counters->PortionsAlone->AddPortion(MainPortion); @@ -951,7 +957,7 @@ public: } else { if (itFrom == Buckets.end()) { const TDuration freshness = now - TInstant::MilliSeconds(portion->RecordSnapshotMax().GetPlanStep()); - if (freshness < CommonFreshnessCheckDuration) { + if (freshness < GetCommonFreshnessCheckDuration()) { AddOther(portion, now); return; } diff --git a/ydb/core/tx/columnshard/hooks/abstract/abstract.h b/ydb/core/tx/columnshard/hooks/abstract/abstract.h index 66ea399129..093ccd3031 100644 --- a/ydb/core/tx/columnshard/hooks/abstract/abstract.h +++ b/ydb/core/tx/columnshard/hooks/abstract/abstract.h @@ -67,6 +67,16 @@ public: virtual TDuration GetTTLDefaultWaitingDuration(const TDuration defaultValue) const { return defaultValue; } + virtual TDuration GetGuaranteeIndexationInterval(const TDuration defaultValue) const { + return defaultValue; + } + virtual ui64 GetGuaranteeIndexationStartBytesLimit(const ui64 defaultValue) const { + return defaultValue; + } + virtual TDuration GetOptimizerFreshnessCheckDuration(const TDuration defaultValue) const { + return defaultValue; + } + virtual void OnTieringModified(const std::shared_ptr<NColumnShard::TTiersManager>& /*tiers*/) { } diff --git a/ydb/core/tx/columnshard/hooks/testing/controller.h b/ydb/core/tx/columnshard/hooks/testing/controller.h index 06861e4643..41585f2bb6 100644 --- a/ydb/core/tx/columnshard/hooks/testing/controller.h +++ b/ydb/core/tx/columnshard/hooks/testing/controller.h @@ -7,9 +7,21 @@ class TController: public ICSController { private: YDB_READONLY(TAtomicCounter, FilteredRecordsCount, 0); YDB_READONLY(TAtomicCounter, Compactions, 0); + YDB_ACCESSOR(std::optional<TDuration>, GuaranteeIndexationInterval, TDuration::Zero()); + YDB_ACCESSOR(std::optional<ui64>, GuaranteeIndexationStartBytesLimit, 0); + YDB_ACCESSOR(std::optional<TDuration>, OptimizerFreshnessCheckDuration, TDuration::Zero()); protected: virtual bool DoOnAfterFilterAssembling(const std::shared_ptr<arrow::RecordBatch>& batch) override; virtual bool DoOnStartCompaction(std::shared_ptr<NOlap::TColumnEngineChanges>& changes) override; + virtual TDuration GetGuaranteeIndexationInterval(const TDuration defaultValue) const override { + return GuaranteeIndexationInterval.value_or(defaultValue); + } + virtual ui64 GetGuaranteeIndexationStartBytesLimit(const ui64 defaultValue) const override { + return GuaranteeIndexationStartBytesLimit.value_or(defaultValue); + } + virtual TDuration GetOptimizerFreshnessCheckDuration(const TDuration defaultValue) const override { + return OptimizerFreshnessCheckDuration.value_or(defaultValue); + } public: bool HasPKSortingOnly() const; diff --git a/ydb/core/tx/columnshard/ut_rw/CMakeLists.darwin-x86_64.txt b/ydb/core/tx/columnshard/ut_rw/CMakeLists.darwin-x86_64.txt index 587341b837..e51dec1b76 100644 --- a/ydb/core/tx/columnshard/ut_rw/CMakeLists.darwin-x86_64.txt +++ b/ydb/core/tx/columnshard/ut_rw/CMakeLists.darwin-x86_64.txt @@ -24,6 +24,8 @@ target_link_libraries(ydb-core-tx-columnshard-ut_rw PUBLIC cpp-regex-pcre library-cpp-svnversion core-testlib-default + columnshard-hooks-abstract + columnshard-hooks-testing ydb-services-metadata ydb-core-tx public-lib-yson_value diff --git a/ydb/core/tx/columnshard/ut_rw/CMakeLists.linux-aarch64.txt b/ydb/core/tx/columnshard/ut_rw/CMakeLists.linux-aarch64.txt index 54902b8346..2b43f87f55 100644 --- a/ydb/core/tx/columnshard/ut_rw/CMakeLists.linux-aarch64.txt +++ b/ydb/core/tx/columnshard/ut_rw/CMakeLists.linux-aarch64.txt @@ -24,6 +24,8 @@ target_link_libraries(ydb-core-tx-columnshard-ut_rw PUBLIC cpp-regex-pcre library-cpp-svnversion core-testlib-default + columnshard-hooks-abstract + columnshard-hooks-testing ydb-services-metadata ydb-core-tx public-lib-yson_value diff --git a/ydb/core/tx/columnshard/ut_rw/CMakeLists.linux-x86_64.txt b/ydb/core/tx/columnshard/ut_rw/CMakeLists.linux-x86_64.txt index 241f37985b..47af387c56 100644 --- a/ydb/core/tx/columnshard/ut_rw/CMakeLists.linux-x86_64.txt +++ b/ydb/core/tx/columnshard/ut_rw/CMakeLists.linux-x86_64.txt @@ -25,6 +25,8 @@ target_link_libraries(ydb-core-tx-columnshard-ut_rw PUBLIC cpp-regex-pcre library-cpp-svnversion core-testlib-default + columnshard-hooks-abstract + columnshard-hooks-testing ydb-services-metadata ydb-core-tx public-lib-yson_value diff --git a/ydb/core/tx/columnshard/ut_rw/CMakeLists.windows-x86_64.txt b/ydb/core/tx/columnshard/ut_rw/CMakeLists.windows-x86_64.txt index fa4a063ddd..6118745799 100644 --- a/ydb/core/tx/columnshard/ut_rw/CMakeLists.windows-x86_64.txt +++ b/ydb/core/tx/columnshard/ut_rw/CMakeLists.windows-x86_64.txt @@ -24,6 +24,8 @@ target_link_libraries(ydb-core-tx-columnshard-ut_rw PUBLIC cpp-regex-pcre library-cpp-svnversion core-testlib-default + columnshard-hooks-abstract + columnshard-hooks-testing ydb-services-metadata ydb-core-tx public-lib-yson_value diff --git a/ydb/core/tx/columnshard/ut_rw/ut_columnshard_read_write.cpp b/ydb/core/tx/columnshard/ut_rw/ut_columnshard_read_write.cpp index aa20d99089..ec36f237ee 100644 --- a/ydb/core/tx/columnshard/ut_rw/ut_columnshard_read_write.cpp +++ b/ydb/core/tx/columnshard/ut_rw/ut_columnshard_read_write.cpp @@ -10,6 +10,7 @@ #include <ydb/core/tx/columnshard/engines/changes/cleanup.h> #include <ydb/core/tx/columnshard/operations/write_data.h> #include <ydb/core/tx/columnshard/hooks/abstract/abstract.h> +#include <ydb/core/tx/columnshard/hooks/testing/controller.h> #include <library/cpp/actors/protos/unittests.pb.h> #include <ydb/core/formats/arrow/simple_builder/filler.h> #include <ydb/core/formats/arrow/simple_builder/array.h> @@ -29,7 +30,8 @@ namespace NTypeIds = NScheme::NTypeIds; using TTypeId = NScheme::TTypeId; using TTypeInfo = NScheme::TTypeInfo; -class TDisableCompactionController: public NKikimr::NYDBTest::ICSController { +using TDefaultTestsController = NKikimr::NYDBTest::NColumnShard::TController; +class TDisableCompactionController: public NKikimr::NYDBTest::NColumnShard::TController { protected: virtual bool DoOnStartCompaction(std::shared_ptr<NOlap::TColumnEngineChanges>& changes) { changes = nullptr; @@ -542,6 +544,7 @@ void TestWriteOverload(const TestTableDescription& table) { void TestWriteReadDup(const TestTableDescription& table = {}) { TTestBasicRuntime runtime; TTester::Setup(runtime); + auto csDefaultControllerGuard = NKikimr::NYDBTest::TControllers::RegisterCSControllerGuard<TDefaultTestsController>(); TActorId sender = runtime.AllocateEdgeActor(); CreateTestBootstrapper(runtime, CreateTestTabletInfo(TTestTxConfig::TxTablet0, TTabletTypes::ColumnShard), &CreateColumnShard); @@ -592,6 +595,7 @@ void TestWriteReadDup(const TestTableDescription& table = {}) { void TestWriteReadLongTxDup() { TTestBasicRuntime runtime; TTester::Setup(runtime); + auto csDefaultControllerGuard = NKikimr::NYDBTest::TControllers::RegisterCSControllerGuard<TDefaultTestsController>(); TActorId sender = runtime.AllocateEdgeActor(); CreateTestBootstrapper(runtime, CreateTestTabletInfo(TTestTxConfig::TxTablet0, TTabletTypes::ColumnShard), &CreateColumnShard); @@ -1105,6 +1109,7 @@ void TestWriteRead(bool reboots, const TestTableDescription& table = {}, TString void TestCompactionInGranuleImpl(bool reboots, const TestTableDescription& table) { TTestBasicRuntime runtime; TTester::Setup(runtime); + auto csDefaultControllerGuard = NKikimr::NYDBTest::TControllers::RegisterCSControllerGuard<TDefaultTestsController>(); TActorId sender = runtime.AllocateEdgeActor(); CreateTestBootstrapper(runtime, CreateTestTabletInfo(TTestTxConfig::TxTablet0, TTabletTypes::ColumnShard), &CreateColumnShard); @@ -2486,6 +2491,7 @@ Y_UNIT_TEST_SUITE(TColumnShardTestReadWrite) { void TestCompactionSplitGranuleImpl(const TestTableDescription& table, const TTestBlobOptions& testBlobOptions = {}) { TTestBasicRuntime runtime; TTester::Setup(runtime); + auto csDefaultControllerGuard = NKikimr::NYDBTest::TControllers::RegisterCSControllerGuard<TDefaultTestsController>(); TActorId sender = runtime.AllocateEdgeActor(); CreateTestBootstrapper(runtime, CreateTestTabletInfo(TTestTxConfig::TxTablet0, TTabletTypes::ColumnShard), &CreateColumnShard); @@ -2806,6 +2812,7 @@ Y_UNIT_TEST_SUITE(TColumnShardTestReadWrite) { void TestCompactionGC() { TTestBasicRuntime runtime; TTester::Setup(runtime); + auto csDefaultControllerGuard = NKikimr::NYDBTest::TControllers::RegisterCSControllerGuard<TDefaultTestsController>(); runtime.SetLogPriority(NKikimrServices::BLOB_CACHE, NActors::NLog::PRI_INFO); diff --git a/ydb/core/tx/columnshard/ut_rw/ya.make b/ydb/core/tx/columnshard/ut_rw/ya.make index c57bf410f1..2819d6f667 100644 --- a/ydb/core/tx/columnshard/ut_rw/ya.make +++ b/ydb/core/tx/columnshard/ut_rw/ya.make @@ -19,6 +19,8 @@ PEERDIR( library/cpp/regex/pcre library/cpp/svnversion ydb/core/testlib/default + ydb/core/tx/columnshard/hooks/abstract + ydb/core/tx/columnshard/hooks/testing ydb/services/metadata ydb/core/tx ydb/public/lib/yson_value diff --git a/ydb/core/tx/columnshard/ut_schema/CMakeLists.darwin-x86_64.txt b/ydb/core/tx/columnshard/ut_schema/CMakeLists.darwin-x86_64.txt index 5154de40fe..b939a28187 100644 --- a/ydb/core/tx/columnshard/ut_schema/CMakeLists.darwin-x86_64.txt +++ b/ydb/core/tx/columnshard/ut_schema/CMakeLists.darwin-x86_64.txt @@ -24,6 +24,8 @@ target_link_libraries(ydb-core-tx-columnshard-ut_schema PUBLIC cpp-regex-pcre library-cpp-svnversion core-testlib-default + columnshard-hooks-abstract + columnshard-hooks-testing ydb-services-metadata ydb-core-tx public-lib-yson_value diff --git a/ydb/core/tx/columnshard/ut_schema/CMakeLists.linux-aarch64.txt b/ydb/core/tx/columnshard/ut_schema/CMakeLists.linux-aarch64.txt index f478f6421c..2bfe87b014 100644 --- a/ydb/core/tx/columnshard/ut_schema/CMakeLists.linux-aarch64.txt +++ b/ydb/core/tx/columnshard/ut_schema/CMakeLists.linux-aarch64.txt @@ -24,6 +24,8 @@ target_link_libraries(ydb-core-tx-columnshard-ut_schema PUBLIC cpp-regex-pcre library-cpp-svnversion core-testlib-default + columnshard-hooks-abstract + columnshard-hooks-testing ydb-services-metadata ydb-core-tx public-lib-yson_value diff --git a/ydb/core/tx/columnshard/ut_schema/CMakeLists.linux-x86_64.txt b/ydb/core/tx/columnshard/ut_schema/CMakeLists.linux-x86_64.txt index fd236bae97..c88400f82d 100644 --- a/ydb/core/tx/columnshard/ut_schema/CMakeLists.linux-x86_64.txt +++ b/ydb/core/tx/columnshard/ut_schema/CMakeLists.linux-x86_64.txt @@ -25,6 +25,8 @@ target_link_libraries(ydb-core-tx-columnshard-ut_schema PUBLIC cpp-regex-pcre library-cpp-svnversion core-testlib-default + columnshard-hooks-abstract + columnshard-hooks-testing ydb-services-metadata ydb-core-tx public-lib-yson_value diff --git a/ydb/core/tx/columnshard/ut_schema/CMakeLists.windows-x86_64.txt b/ydb/core/tx/columnshard/ut_schema/CMakeLists.windows-x86_64.txt index 797546b0e6..ac67d068cd 100644 --- a/ydb/core/tx/columnshard/ut_schema/CMakeLists.windows-x86_64.txt +++ b/ydb/core/tx/columnshard/ut_schema/CMakeLists.windows-x86_64.txt @@ -24,6 +24,8 @@ target_link_libraries(ydb-core-tx-columnshard-ut_schema PUBLIC cpp-regex-pcre library-cpp-svnversion core-testlib-default + columnshard-hooks-abstract + columnshard-hooks-testing ydb-services-metadata ydb-core-tx public-lib-yson_value diff --git a/ydb/core/tx/columnshard/ut_schema/ut_columnshard_schema.cpp b/ydb/core/tx/columnshard/ut_schema/ut_columnshard_schema.cpp index 440bece16e..d6b2860131 100644 --- a/ydb/core/tx/columnshard/ut_schema/ut_columnshard_schema.cpp +++ b/ydb/core/tx/columnshard/ut_schema/ut_columnshard_schema.cpp @@ -7,6 +7,7 @@ #include <ydb/core/tx/tx_proxy/proxy.h> #include <ydb/core/tx/schemeshard/schemeshard.h> #include <ydb/core/tx/columnshard/hooks/abstract/abstract.h> +#include <ydb/core/tx/columnshard/hooks/testing/controller.h> #include <ydb/core/tx/columnshard/blobs_reader/actor.h> #include <ydb/public/sdk/cpp/client/ydb_table/table.h> @@ -27,7 +28,7 @@ enum class EInitialEviction { Tiering }; -class TWaitCompactionController: public NKikimr::NYDBTest::ICSController { +class TWaitCompactionController: public NKikimr::NYDBTest::NColumnShard::TController { private: using TBase = NKikimr::NYDBTest::ICSController; TAtomic TTLFinishedCounter = 0; diff --git a/ydb/core/tx/columnshard/ut_schema/ya.make b/ydb/core/tx/columnshard/ut_schema/ya.make index bacba02d3d..f94fea4e91 100644 --- a/ydb/core/tx/columnshard/ut_schema/ya.make +++ b/ydb/core/tx/columnshard/ut_schema/ya.make @@ -19,6 +19,8 @@ PEERDIR( library/cpp/regex/pcre library/cpp/svnversion ydb/core/testlib/default + ydb/core/tx/columnshard/hooks/abstract + ydb/core/tx/columnshard/hooks/testing ydb/services/metadata ydb/core/tx ydb/public/lib/yson_value |