@@ -235,86 +235,6 @@ Y_UNIT_TEST_SUITE(KqpS3PlanTest) {
235
235
UNIT_ASSERT_VALUES_EQUAL (readStagePlan[" Node Type" ].GetStringSafe (), " Stage" );
236
236
UNIT_ASSERT_VALUES_EQUAL (readStagePlan[" Stats" ][" Tasks" ], 1 );
237
237
}
238
-
239
- Y_UNIT_TEST (S3Insert) {
240
- {
241
- Aws::S3::S3Client s3Client = MakeS3Client ();
242
- CreateBucket (" test_insert" , s3Client);
243
- }
244
-
245
- NKikimrConfig::TAppConfig appConfig;
246
- appConfig.MutableTableServiceConfig ()->SetEnableOltpSink (true );
247
- appConfig.MutableTableServiceConfig ()->SetEnableOlapSink (true );
248
- appConfig.MutableTableServiceConfig ()->SetEnableCreateTableAs (true );
249
- auto kikimr = NTestUtils::MakeKikimrRunner (appConfig);
250
-
251
- auto tc = kikimr->GetTableClient ();
252
- auto session = tc.CreateSession ().GetValueSync ().GetSession ();
253
- {
254
- const TString query = fmt::format (R"sql(
255
- CREATE EXTERNAL DATA SOURCE insert_data_sink WITH (
256
- SOURCE_TYPE="ObjectStorage",
257
- LOCATION="{insert_location}",
258
- AUTH_METHOD="NONE"
259
- );
260
- )sql" ,
261
- " insert_location" _a = GetBucketLocation (" test_insert" )
262
- );
263
- auto result = session.ExecuteSchemeQuery (query).GetValueSync ();
264
- UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), NYdb::EStatus::SUCCESS, result.GetIssues ().ToString ());
265
- }
266
-
267
- auto queryClient = kikimr->GetQueryClient ();
268
- {
269
- const TString query = R"sql(
270
- CREATE TABLE olap_source (
271
- PRIMARY KEY (data)
272
- ) WITH (STORE = COLUMN)
273
- AS SELECT * FROM AS_TABLE([
274
- <|data: "test_data"|>
275
- ]);
276
- )sql" ;
277
- auto result = queryClient.ExecuteQuery (query, TTxControl::NoTx ()).GetValueSync ();
278
- UNIT_ASSERT_VALUES_EQUAL_C (result.GetStatus (), NYdb::EStatus::SUCCESS, result.GetIssues ().ToString ());
279
- }
280
-
281
- const TString sql = R"sql(
282
- PRAGMA ydb.OverridePlanner = @@ [
283
- { "tx": 0, "stage": 0, "tasks": 42 }
284
- ] @@;
285
-
286
- INSERT INTO insert_data_sink.`/test/`
287
- WITH (FORMAT = "parquet")
288
- SELECT * FROM olap_source
289
- )sql" ;
290
-
291
- TExecuteQueryResult queryResult = queryClient.ExecuteQuery (
292
- sql,
293
- TTxControl::NoTx (),
294
- TExecuteQuerySettings ().StatsMode (EStatsMode::Full)).GetValueSync ();
295
-
296
- UNIT_ASSERT_VALUES_EQUAL_C (queryResult.GetStatus (), NYdb::EStatus::SUCCESS, queryResult.GetIssues ().ToString ());
297
- UNIT_ASSERT (queryResult.GetStats ());
298
- UNIT_ASSERT (queryResult.GetStats ()->GetPlan ());
299
- Cerr << " Plan: " << *queryResult.GetStats ()->GetPlan () << Endl;
300
- NJson::TJsonValue plan;
301
- UNIT_ASSERT (NJson::ReadJsonTree (*queryResult.GetStats ()->GetPlan (), &plan));
302
-
303
- const auto & writeStagePlan = plan[" Plan" ][" Plans" ][0 ][" Plans" ][0 ];
304
- UNIT_ASSERT_VALUES_EQUAL (writeStagePlan[" Node Type" ].GetStringSafe (), " Stage" );
305
- UNIT_ASSERT_VALUES_EQUAL (writeStagePlan[" Stats" ][" Tasks" ], 42 );
306
-
307
- const auto & sinkPlan = plan[" Plan" ][" Plans" ][0 ];
308
- UNIT_ASSERT_VALUES_EQUAL (sinkPlan[" Node Type" ].GetStringSafe (), " Sink" );
309
- UNIT_ASSERT (sinkPlan[" Operators" ].GetArraySafe ().size () >= 1 );
310
- const auto & sinkOp = sinkPlan[" Operators" ].GetArraySafe ()[0 ];
311
- UNIT_ASSERT_VALUES_EQUAL (sinkOp[" ExternalDataSource" ].GetStringSafe (), " insert_data_sink" );
312
- UNIT_ASSERT_VALUES_EQUAL (sinkOp[" Extension" ].GetStringSafe (), " .parquet" );
313
-
314
- const auto & readStagePlan = plan[" Plan" ][" Plans" ][0 ][" Plans" ][0 ][" Plans" ][0 ][" Plans" ][0 ];
315
- UNIT_ASSERT_VALUES_EQUAL (readStagePlan[" Node Type" ].GetStringSafe (), " TableFullScan" );
316
- UNIT_ASSERT_VALUES_EQUAL (readStagePlan[" Stats" ][" Tasks" ], 42 );
317
- }
318
238
}
319
239
320
240
} // namespace NKikimr::NKqp
0 commit comments