@@ -2483,167 +2483,6 @@ Y_UNIT_TEST_SUITE(KqpPg) {
24832483 }
24842484 }
24852485
2486- Y_UNIT_TEST (AlterTempTables) {
2487- NKikimrConfig::TAppConfig appConfig;
2488- appConfig.MutableTableServiceConfig ()->SetEnablePreparedDdl (true );
2489- auto setting = NKikimrKqp::TKqpSetting ();
2490- auto serverSettings = TKikimrSettings ()
2491- .SetAppConfig (appConfig)
2492- .SetKqpSettings ({setting});
2493- TKikimrRunner kikimr (
2494- serverSettings.SetWithSampleTables (false ).SetEnableTempTables (true ));
2495- auto clientConfig = NGRpcProxy::TGRpcClientConfig (kikimr.GetEndpoint ());
2496- auto client = kikimr.GetQueryClient ();
2497-
2498- auto settings = NYdb::NQuery::TExecuteQuerySettings ()
2499- .Syntax (NYdb::NQuery::ESyntax::Pg)
2500- .StatsMode (NYdb::NQuery::EStatsMode::Basic);
2501- {
2502- auto session = client.GetSession ().GetValueSync ().GetSession ();
2503- auto id = session.GetId ();
2504- {
2505- const auto query = Q_ (R"(
2506- --!syntax_pg
2507- CREATE TABLE PgTemp (
2508- key int2 PRIMARY KEY,
2509- value int2))" );
2510-
2511- auto result =
2512- session.ExecuteQuery (query, NYdb::NQuery::TTxControl::NoTx (), settings).ExtractValueSync ();
2513- UNIT_ASSERT_C (result.IsSuccess (), result.GetIssues ().ToString ());
2514- auto stats = NYdb::TProtoAccessor::GetProto (*result.GetStats ());
2515- UNIT_ASSERT_VALUES_EQUAL (stats.compilation ().from_cache (), false );
2516- }
2517-
2518- {
2519- auto result = session.ExecuteQuery (R"(
2520- ALTER TABLE PgTemp DROP COLUMN value;
2521- )" , NYdb::NQuery::TTxControl::NoTx (), settings).ExtractValueSync ();
2522- UNIT_ASSERT_C (result.IsSuccess (), result.GetIssues ().ToString ());
2523- auto stats = NYdb::TProtoAccessor::GetProto (*result.GetStats ());
2524- UNIT_ASSERT_VALUES_EQUAL (stats.compilation ().from_cache (), false );
2525- }
2526-
2527- {
2528- const auto query = Q_ (R"(
2529- --!syntax_pg
2530- DROP TABLE PgTemp;
2531- )" );
2532-
2533- auto result =
2534- session.ExecuteQuery (query, NYdb::NQuery::TTxControl::NoTx (), settings).ExtractValueSync ();
2535- UNIT_ASSERT_C (result.IsSuccess (), result.GetIssues ().ToString ());
2536- auto stats = NYdb::TProtoAccessor::GetProto (*result.GetStats ());
2537- UNIT_ASSERT_VALUES_EQUAL (stats.compilation ().from_cache (), false );
2538- }
2539-
2540- {
2541- const auto query = Q_ (R"(
2542- --!syntax_pg
2543- CREATE TABLE PgTemp (
2544- key int2 PRIMARY KEY,
2545- value int2))" );
2546-
2547- auto result =
2548- session.ExecuteQuery (query, NYdb::NQuery::TTxControl::NoTx (), settings).ExtractValueSync ();
2549- UNIT_ASSERT_C (result.IsSuccess (), result.GetIssues ().ToString ());
2550- auto stats = NYdb::TProtoAccessor::GetProto (*result.GetStats ());
2551- UNIT_ASSERT_VALUES_EQUAL (stats.compilation ().from_cache (), false );
2552-
2553- auto resultInsert = session.ExecuteQuery (R"(
2554- INSERT INTO PgTemp VALUES(1, 1);
2555- )" , NYdb::NQuery::TTxControl::BeginTx ().CommitTx (), settings).ExtractValueSync ();
2556- UNIT_ASSERT_VALUES_EQUAL_C (
2557- resultInsert.GetStatus (), EStatus::SUCCESS, resultInsert.GetIssues ().ToString ());
2558- }
2559-
2560- {
2561- const auto query = Q_ (R"(
2562- --!syntax_pg
2563- SELECT * FROM PgTemp;
2564- )" );
2565-
2566- auto result = session.ExecuteQuery (
2567- query, NYdb::NQuery::TTxControl::BeginTx ().CommitTx (), settings).ExtractValueSync ();
2568- UNIT_ASSERT_C (result.IsSuccess (), result.GetIssues ().ToString ());
2569- auto stats = NYdb::TProtoAccessor::GetProto (*result.GetStats ());
2570- UNIT_ASSERT_VALUES_EQUAL (stats.compilation ().from_cache (), false );
2571-
2572- UNIT_ASSERT_C (!result.GetResultSets ().empty (), " results are empty" );
2573- CompareYson (R"(
2574- [["1";"1"]]
2575- )" , FormatResultSetYson (result.GetResultSet (0 )));
2576- }
2577-
2578- {
2579- auto result = session.ExecuteQuery (R"(
2580- ALTER TABLE PgTemp DROP COLUMN value;
2581- )" , NYdb::NQuery::TTxControl::NoTx (), settings).ExtractValueSync ();
2582- UNIT_ASSERT_C (result.IsSuccess (), result.GetIssues ().ToString ());
2583- auto stats = NYdb::TProtoAccessor::GetProto (*result.GetStats ());
2584- UNIT_ASSERT_VALUES_EQUAL (stats.compilation ().from_cache (), false );
2585- }
2586-
2587- {
2588- const auto query = Q_ (R"(
2589- --!syntax_pg
2590- SELECT * FROM PgTemp;
2591- )" );
2592-
2593- auto result = session.ExecuteQuery (
2594- query, NYdb::NQuery::TTxControl::BeginTx ().CommitTx (), settings).ExtractValueSync ();
2595- UNIT_ASSERT_C (result.IsSuccess (), result.GetIssues ().ToString ());
2596- auto stats = NYdb::TProtoAccessor::GetProto (*result.GetStats ());
2597- UNIT_ASSERT_VALUES_EQUAL (stats.compilation ().from_cache (), false );
2598-
2599- UNIT_ASSERT_C (!result.GetResultSets ().empty (), " results are empty" );
2600- CompareYson (R"(
2601- [["1"]]
2602- )" , FormatResultSetYson (result.GetResultSet (0 )));
2603- }
2604-
2605- {
2606- const auto query = Q_ (R"(
2607- --!syntax_pg
2608- DROP TABLE PgTemp;
2609- )" );
2610-
2611- auto result =
2612- session.ExecuteQuery (query, NYdb::NQuery::TTxControl::NoTx (), settings).ExtractValueSync ();
2613- UNIT_ASSERT_C (result.IsSuccess (), result.GetIssues ().ToString ());
2614- auto stats = NYdb::TProtoAccessor::GetProto (*result.GetStats ());
2615- UNIT_ASSERT_VALUES_EQUAL (stats.compilation ().from_cache (), false );
2616- }
2617-
2618- {
2619- const auto querySelect = Q_ (R"(
2620- --!syntax_pg
2621- SELECT * FROM PgTemp;
2622- )" );
2623-
2624- auto resultSelect = client.ExecuteQuery (
2625- querySelect, NYdb::NQuery::TTxControl::BeginTx ().CommitTx ()).ExtractValueSync ();
2626- UNIT_ASSERT (!resultSelect.IsSuccess ());
2627- }
2628-
2629- bool allDoneOk = true ;
2630- NTestHelpers::CheckDelete (clientConfig, id, Ydb::StatusIds::SUCCESS, allDoneOk);
2631-
2632- UNIT_ASSERT (allDoneOk);
2633- }
2634-
2635- {
2636- const auto querySelect = Q_ (R"(
2637- --!syntax_pg
2638- SELECT * FROM PgTemp;
2639- )" );
2640-
2641- auto resultSelect = client.ExecuteQuery (
2642- querySelect, NYdb::NQuery::TTxControl::BeginTx ().CommitTx ()).ExtractValueSync ();
2643- UNIT_ASSERT (!resultSelect.IsSuccess ());
2644- }
2645- }
2646-
26472486 Y_UNIT_TEST (ValuesInsert) {
26482487 TKikimrRunner kikimr (NKqp::TKikimrSettings ().SetWithSampleTables (false ));
26492488 auto testSingleType = [&kikimr] (const TPgTypeTestSpec& spec) {
0 commit comments