@@ -117,14 +117,15 @@ Y_UNIT_TEST_SUITE(KqpOlapIndexes) {
117
117
csController->SetOverrideLagForCompactionBeforeTierings (TDuration::Seconds (1 ));
118
118
csController->SetOverrideReduceMemoryIntervalLimit (1LLU << 30 );
119
119
120
- TLocalHelper (kikimr).CreateTestOlapTable ();
120
+ TLocalHelper (kikimr).CreateTestOlapTableWithoutStore ();
121
121
auto tableClient = kikimr.GetTableClient ();
122
+ auto & client = kikimr.GetTestClient ();
122
123
123
124
Tests::NCommon::TLoggerInit (kikimr).SetComponents ({NKikimrServices::TX_COLUMNSHARD}, " CS" ).SetPriority (NActors::NLog::PRI_DEBUG).Initialize ();
124
125
125
126
{
126
127
auto alterQuery = TStringBuilder () <<
127
- R"( ALTER OBJECT `/Root/olapStore ` (TYPE TABLESTORE ) SET (ACTION=UPSERT_INDEX, NAME=cms_ts, TYPE=COUNT_MIN_SKETCH,
128
+ R"( ALTER OBJECT `/Root/olapTable ` (TYPE TABLE ) SET (ACTION=UPSERT_INDEX, NAME=cms_ts, TYPE=COUNT_MIN_SKETCH,
128
129
FEATURES=`{"column_names" : ['timestamp']}`);
129
130
)" ;
130
131
auto session = tableClient.CreateSession ().GetValueSync ().GetSession ();
@@ -134,7 +135,7 @@ Y_UNIT_TEST_SUITE(KqpOlapIndexes) {
134
135
135
136
{
136
137
auto alterQuery = TStringBuilder () <<
137
- R"( ALTER OBJECT `/Root/olapStore ` (TYPE TABLESTORE ) SET (ACTION=UPSERT_INDEX, NAME=cms_res_id, TYPE=COUNT_MIN_SKETCH,
138
+ R"( ALTER OBJECT `/Root/olapTable ` (TYPE TABLE ) SET (ACTION=UPSERT_INDEX, NAME=cms_res_id, TYPE=COUNT_MIN_SKETCH,
138
139
FEATURES=`{"column_names" : ['resource_id']}`);
139
140
)" ;
140
141
auto session = tableClient.CreateSession ().GetValueSync ().GetSession ();
@@ -144,7 +145,7 @@ Y_UNIT_TEST_SUITE(KqpOlapIndexes) {
144
145
145
146
{
146
147
auto alterQuery = TStringBuilder () <<
147
- R"( ALTER OBJECT `/Root/olapStore ` (TYPE TABLESTORE ) SET (ACTION=UPSERT_INDEX, NAME=cms_uid, TYPE=COUNT_MIN_SKETCH,
148
+ R"( ALTER OBJECT `/Root/olapTable ` (TYPE TABLE ) SET (ACTION=UPSERT_INDEX, NAME=cms_uid, TYPE=COUNT_MIN_SKETCH,
148
149
FEATURES=`{"column_names" : ['uid']}`);
149
150
)" ;
150
151
auto session = tableClient.CreateSession ().GetValueSync ().GetSession ();
@@ -154,7 +155,7 @@ Y_UNIT_TEST_SUITE(KqpOlapIndexes) {
154
155
155
156
{
156
157
auto alterQuery = TStringBuilder () <<
157
- R"( ALTER OBJECT `/Root/olapStore ` (TYPE TABLESTORE ) SET (ACTION=UPSERT_INDEX, NAME=cms_level, TYPE=COUNT_MIN_SKETCH,
158
+ R"( ALTER OBJECT `/Root/olapTable ` (TYPE TABLE ) SET (ACTION=UPSERT_INDEX, NAME=cms_level, TYPE=COUNT_MIN_SKETCH,
158
159
FEATURES=`{"column_names" : ['level']}`);
159
160
)" ;
160
161
auto session = tableClient.CreateSession ().GetValueSync ().GetSession ();
@@ -164,23 +165,39 @@ Y_UNIT_TEST_SUITE(KqpOlapIndexes) {
164
165
165
166
{
166
167
auto alterQuery = TStringBuilder () <<
167
- R"( ALTER OBJECT `/Root/olapStore ` (TYPE TABLESTORE ) SET (ACTION=UPSERT_INDEX, NAME=cms_message, TYPE=COUNT_MIN_SKETCH,
168
+ R"( ALTER OBJECT `/Root/olapTable ` (TYPE TABLE ) SET (ACTION=UPSERT_INDEX, NAME=cms_message, TYPE=COUNT_MIN_SKETCH,
168
169
FEATURES=`{"column_names" : ['message']}`);
169
170
)" ;
170
171
auto session = tableClient.CreateSession ().GetValueSync ().GetSession ();
171
172
auto alterResult = session.ExecuteSchemeQuery (alterQuery).GetValueSync ();
172
173
UNIT_ASSERT_VALUES_EQUAL_C (alterResult.GetStatus (), NYdb::EStatus::SUCCESS, alterResult.GetIssues ().ToString ());
173
174
}
174
175
175
- WriteTestData (kikimr, " /Root/olapStore/ olapTable" , 1000000 , 300000000 , 10000 );
176
- WriteTestData (kikimr, " /Root/olapStore/ olapTable" , 1100000 , 300100000 , 10000 );
177
- WriteTestData (kikimr, " /Root/olapStore/ olapTable" , 1200000 , 300200000 , 10000 );
178
- WriteTestData (kikimr, " /Root/olapStore/ olapTable" , 1300000 , 300300000 , 10000 );
179
- WriteTestData (kikimr, " /Root/olapStore/ olapTable" , 1400000 , 300400000 , 10000 );
180
- WriteTestData (kikimr, " /Root/olapStore/ olapTable" , 2000000 , 200000000 , 70000 );
181
- WriteTestData (kikimr, " /Root/olapStore/ olapTable" , 3000000 , 100000000 , 110000 );
176
+ WriteTestData (kikimr, " /Root/olapTable" , 1000000 , 300000000 , 10000 );
177
+ WriteTestData (kikimr, " /Root/olapTable" , 1100000 , 300100000 , 10000 );
178
+ WriteTestData (kikimr, " /Root/olapTable" , 1200000 , 300200000 , 10000 );
179
+ WriteTestData (kikimr, " /Root/olapTable" , 1300000 , 300300000 , 10000 );
180
+ WriteTestData (kikimr, " /Root/olapTable" , 1400000 , 300400000 , 10000 );
181
+ WriteTestData (kikimr, " /Root/olapTable" , 2000000 , 200000000 , 70000 );
182
+ WriteTestData (kikimr, " /Root/olapTable" , 3000000 , 100000000 , 110000 );
182
183
183
184
csController->WaitActualization (TDuration::Seconds (10 ));
185
+
186
+ {
187
+ auto res = client.Ls (" /Root/olapTable" );
188
+ auto description = res->Record .GetPathDescription ().GetColumnTableDescription ();
189
+ auto indexes = description.GetSchema ().GetIndexes ();
190
+ UNIT_ASSERT (indexes.size () == 5 );
191
+
192
+ std::unordered_set<TString> indexNames{" cms_ts" , " cms_res_id" , " cms_uid" , " cms_level" , " cms_message" };
193
+ for (const auto & i : indexes) {
194
+ Cerr << " >>> " << i.GetName () << " of class name " << i.GetClassName () << Endl;
195
+ UNIT_ASSERT (i.GetClassName () == " COUNT_MIN_SKETCH" );
196
+ UNIT_ASSERT (indexNames.erase (i.GetName ()));
197
+ }
198
+ UNIT_ASSERT (indexNames.empty ());
199
+ }
200
+
184
201
{
185
202
auto runtime = kikimr.GetTestServer ().GetRuntime ();
186
203
auto sender = runtime->AllocateEdgeActor ();
0 commit comments