@@ -31,32 +31,37 @@ namespace NKqp {
3131
3232 using namespace NYdb ;
3333
34- TTestHelper::TTestHelper (const TKikimrSettings& settings)
35- : Kikimr(settings)
36- , TableClient(Kikimr.GetTableClient())
37- , Session(TableClient.CreateSession().GetValueSync().GetSession())
38- {}
34+ TTestHelper::TTestHelper (const TKikimrSettings& settings) {
35+ TKikimrSettings kikimrSettings (settings);
36+ if (!kikimrSettings.FeatureFlags .HasEnableOlapTiering ()) {
37+ kikimrSettings.SetEnableOlapTiering (true );
38+ }
39+
40+ Kikimr = std::make_unique<TKikimrRunner>(kikimrSettings);
41+ TableClient = std::make_unique<NYdb::NTable::TTableClient>(Kikimr->GetTableClient ());
42+ Session = std::make_unique<NYdb::NTable::TSession>(TableClient->CreateSession ().GetValueSync ().GetSession ());
43+ }
3944
4045 NKikimr::NKqp::TKikimrRunner& TTestHelper::GetKikimr () {
41- return Kikimr;
46+ return * Kikimr;
4247 }
4348
4449 TTestActorRuntime& TTestHelper::GetRuntime () {
45- return *Kikimr. GetTestServer ().GetRuntime ();
50+ return *Kikimr-> GetTestServer ().GetRuntime ();
4651 }
4752
4853 NYdb::NTable::TSession& TTestHelper::GetSession () {
49- return Session;
54+ return * Session;
5055 }
5156
5257 void TTestHelper::CreateTable (const TColumnTableBase& table, const EStatus expectedStatus) {
5358 std::cerr << (table.BuildQuery ()) << std::endl;
54- auto result = Session .ExecuteSchemeQuery (table.BuildQuery ()).GetValueSync ();
59+ auto result = GetSession () .ExecuteSchemeQuery (table.BuildQuery ()).GetValueSync ();
5560 UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), expectedStatus, result.GetIssues ().ToString ());
5661 }
5762
5863 void TTestHelper::CreateTier (const TString& tierName) {
59- auto result = Session .ExecuteSchemeQuery (" CREATE OBJECT " + tierName + " (TYPE TIER) WITH tierConfig = `" + GetConfigProtoWithName (tierName) + " `" ).GetValueSync ();
64+ auto result = GetSession () .ExecuteSchemeQuery (" CREATE OBJECT " + tierName + " (TYPE TIER) WITH tierConfig = `" + GetConfigProtoWithName (tierName) + " `" ).GetValueSync ();
6065 UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), EStatus::SUCCESS, result.GetIssues ().ToString ());
6166 }
6267
@@ -70,43 +75,43 @@ namespace NKqp {
7075 }
7176 ]
7277 })" ;
73- auto result = Session .ExecuteSchemeQuery (" CREATE OBJECT IF NOT EXISTS " + ruleName + " (TYPE TIERING_RULE) WITH (defaultColumn = " + columnName + " , description = `" + configTieringStr + " `)" ).GetValueSync ();
78+ auto result = GetSession () .ExecuteSchemeQuery (" CREATE OBJECT IF NOT EXISTS " + ruleName + " (TYPE TIERING_RULE) WITH (defaultColumn = " + columnName + " , description = `" + configTieringStr + " `)" ).GetValueSync ();
7479 UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), EStatus::SUCCESS, result.GetIssues ().ToString ());
7580 return ruleName;
7681 }
7782
7883 void TTestHelper::SetTiering (const TString& tableName, const TString& ruleName) {
7984 auto alterQuery = TStringBuilder () << " ALTER TABLE `" << tableName << " ` SET (TIERING = '" << ruleName << " ')" ;
80- auto result = Session .ExecuteSchemeQuery (alterQuery).GetValueSync ();
85+ auto result = GetSession () .ExecuteSchemeQuery (alterQuery).GetValueSync ();
8186 UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), EStatus::SUCCESS, result.GetIssues ().ToString ());
8287 }
8388
8489 void TTestHelper::ResetTiering (const TString& tableName) {
8590 auto alterQuery = TStringBuilder () << " ALTER TABLE `" << tableName << " ` RESET (TIERING)" ;
86- auto result = Session .ExecuteSchemeQuery (alterQuery).GetValueSync ();
91+ auto result = GetSession () .ExecuteSchemeQuery (alterQuery).GetValueSync ();
8792 UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), EStatus::SUCCESS, result.GetIssues ().ToString ());
8893 }
8994
9095 void TTestHelper::DropTable (const TString& tableName) {
91- auto result = Session .DropTable (tableName).GetValueSync ();
96+ auto result = GetSession () .DropTable (tableName).GetValueSync ();
9297 UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), EStatus::SUCCESS, result.GetIssues ().ToString ());
9398 }
9499
95100 void TTestHelper::BulkUpsert (const TColumnTable& table, TTestHelper::TUpdatesBuilder& updates, const Ydb::StatusIds_StatusCode& opStatus /* = Ydb::StatusIds::SUCCESS*/ ) {
96101 Y_UNUSED (opStatus);
97- NKikimr::Tests::NCS::THelper helper (Kikimr .GetTestServer ());
102+ NKikimr::Tests::NCS::THelper helper (GetKikimr () .GetTestServer ());
98103 auto batch = updates.BuildArrow ();
99104 helper.SendDataViaActorSystem (table.GetName (), batch, opStatus);
100105 }
101106
102107 void TTestHelper::BulkUpsert (const TColumnTable& table, std::shared_ptr<arrow::RecordBatch> batch, const Ydb::StatusIds_StatusCode& opStatus /* = Ydb::StatusIds::SUCCESS*/ ) {
103108 Y_UNUSED (opStatus);
104- NKikimr::Tests::NCS::THelper helper (Kikimr .GetTestServer ());
109+ NKikimr::Tests::NCS::THelper helper (GetKikimr () .GetTestServer ());
105110 helper.SendDataViaActorSystem (table.GetName (), batch, opStatus);
106111 }
107112
108113 void TTestHelper::ReadData (const TString& query, const TString& expected, const EStatus opStatus /* = EStatus::SUCCESS*/ ) {
109- auto it = TableClient. StreamExecuteScanQuery (query).GetValueSync ();
114+ auto it = TableClient-> StreamExecuteScanQuery (query).GetValueSync ();
110115 UNIT_ASSERT_VALUES_EQUAL_C (it.GetStatus (), EStatus::SUCCESS, it.GetIssues ().ToString ()); // Means stream successfully get
111116 TString result = StreamResultToYson (it, false , opStatus);
112117 if (opStatus == EStatus::SUCCESS) {
@@ -115,17 +120,17 @@ namespace NKqp {
115120 }
116121
117122 void TTestHelper::RebootTablets (const TString& tableName) {
118- auto runtime = Kikimr .GetTestServer ().GetRuntime ();
123+ auto runtime = GetKikimr () .GetTestServer ().GetRuntime ();
119124 TActorId sender = runtime->AllocateEdgeActor ();
120125 TVector<ui64> shards;
121126 {
122- auto describeResult = DescribeTable (&Kikimr .GetTestServer (), sender, tableName);
127+ auto describeResult = DescribeTable (&GetKikimr () .GetTestServer (), sender, tableName);
123128 for (auto shard : describeResult.GetPathDescription ().GetColumnTableDescription ().GetSharding ().GetColumnShards ()) {
124129 shards.push_back (shard);
125130 }
126131 }
127132 for (auto shard : shards) {
128- Kikimr .GetTestServer ().GetRuntime ()->Send (MakePipePerNodeCacheID (false ), NActors::TActorId (), new TEvPipeCache::TEvForward (
133+ GetKikimr () .GetTestServer ().GetRuntime ()->Send (MakePipePerNodeCacheID (false ), NActors::TActorId (), new TEvPipeCache::TEvForward (
129134 new TEvents::TEvPoisonPill (), shard, false ));
130135 }
131136 }
0 commit comments