Skip to content

Commit 43eb3db

Browse files
authored
Merge 58391dd into bec27f9
2 parents bec27f9 + 58391dd commit 43eb3db

File tree

1 file changed

+75
-0
lines changed

1 file changed

+75
-0
lines changed

ydb/core/kqp/ut/service/kqp_qs_queries_ut.cpp

+75
Original file line numberDiff line numberDiff line change
@@ -1043,6 +1043,81 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
10431043
}
10441044
}
10451045

1046+
Y_UNIT_TEST(AlterTempTable) {
1047+
NKikimrConfig::TAppConfig appConfig;
1048+
appConfig.MutableTableServiceConfig()->SetEnablePreparedDdl(true);
1049+
auto setting = NKikimrKqp::TKqpSetting();
1050+
auto serverSettings = TKikimrSettings()
1051+
.SetAppConfig(appConfig)
1052+
.SetKqpSettings({setting});
1053+
TKikimrRunner kikimr(
1054+
serverSettings.SetWithSampleTables(false).SetEnableTempTables(true));
1055+
auto clientConfig = NGRpcProxy::TGRpcClientConfig(kikimr.GetEndpoint());
1056+
auto client = kikimr.GetQueryClient();
1057+
{
1058+
auto session = client.GetSession().GetValueSync().GetSession();
1059+
auto id = session.GetId();
1060+
1061+
{
1062+
const auto query = Q_(R"(
1063+
--!syntax_v1
1064+
CREATE TEMP TABLE Temp (
1065+
Key Uint64 NOT NULL,
1066+
Value String,
1067+
PRIMARY KEY (Key)
1068+
);)");
1069+
1070+
auto result = session.ExecuteQuery(query, NYdb::NQuery::TTxControl::NoTx()).ExtractValueSync();
1071+
UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString());
1072+
}
1073+
1074+
{
1075+
const auto query = Q_(R"(
1076+
--!syntax_v1
1077+
SELECT * FROM Temp;
1078+
)");
1079+
1080+
auto result = session.ExecuteQuery(
1081+
query, NYdb::NQuery::TTxControl::BeginTx().CommitTx()).ExtractValueSync();
1082+
UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString());
1083+
}
1084+
1085+
{
1086+
auto result = session.ExecuteSchemeQuery(R"(
1087+
ALTER TABLE Temp RENAME TO TempAlter;
1088+
)", NYdb::NQuery::TTxControl::NoTx(), settings).ExtractValueSync();
1089+
UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString());
1090+
}
1091+
1092+
{
1093+
const auto query = Q_(R"(
1094+
--!syntax_v1
1095+
SELECT * FROM TempAlter;
1096+
)");
1097+
1098+
auto result = session.ExecuteQuery(
1099+
query, NYdb::NQuery::TTxControl::BeginTx().CommitTx()).ExtractValueSync();
1100+
UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString());
1101+
}
1102+
1103+
bool allDoneOk = true;
1104+
NTestHelpers::CheckDelete(clientConfig, id, Ydb::StatusIds::SUCCESS, allDoneOk);
1105+
1106+
UNIT_ASSERT(allDoneOk);
1107+
}
1108+
1109+
{
1110+
const auto querySelect = Q_(R"(
1111+
--!syntax_v1
1112+
SELECT * FROM Temp;
1113+
)");
1114+
1115+
auto resultSelect = client.ExecuteQuery(
1116+
querySelect, NYdb::NQuery::TTxControl::BeginTx().CommitTx()).ExtractValueSync();
1117+
UNIT_ASSERT(!resultSelect.IsSuccess());
1118+
}
1119+
}
1120+
10461121
Y_UNIT_TEST(TempTablesDrop) {
10471122
NKikimrConfig::TAppConfig appConfig;
10481123
appConfig.MutableTableServiceConfig()->SetEnablePreparedDdl(true);

0 commit comments

Comments
 (0)