Skip to content

Commit 5dc2621

Browse files
author
Vladislav Gogov
authored
Added muted test "KqpOlapScheme::DropColumnAfterScan" (#9882)
1 parent 6e2ebb2 commit 5dc2621

File tree

2 files changed

+100
-0
lines changed

2 files changed

+100
-0
lines changed

.github/config/muted_ya.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ ydb/core/kqp/ut/query KqpQuery.QueryTimeout
1919
ydb/core/kqp/ut/scan KqpRequestContext.TraceIdInErrorMessage
2020
ydb/core/kqp/ut/scheme [*/*]*
2121
ydb/core/kqp/ut/scheme KqpOlapScheme.TenThousandColumns
22+
ydb/core/kqp/ut/scheme KqpOlapScheme.DropColumnAfterScan
2223
ydb/core/kqp/ut/scheme KqpScheme.AlterAsyncReplication
2324
ydb/core/kqp/ut/scheme KqpScheme.QueryWithAlter
2425
ydb/core/kqp/ut/service [*/*]*

ydb/core/kqp/ut/scheme/kqp_scheme_ut.cpp

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8326,6 +8326,105 @@ Y_UNIT_TEST_SUITE(KqpOlapScheme) {
83268326
testHelper.CreateTable(testTable, EStatus::SCHEME_ERROR);
83278327
}
83288328

8329+
Y_UNIT_TEST(DropColumnAfterScan) {
8330+
using namespace NArrow;
8331+
8332+
auto csController = NYDBTest::TControllers::RegisterCSControllerGuard<NOlap::TWaitCompactionController>();
8333+
csController->DisableBackground(NYDBTest::ICSController::EBackground::Indexation);
8334+
8335+
TKikimrSettings runnerSettings;
8336+
runnerSettings.WithSampleTables = false;
8337+
TTestHelper testHelper(runnerSettings);
8338+
8339+
TVector<TTestHelper::TColumnSchema> schema = {
8340+
TTestHelper::TColumnSchema().SetName("id").SetType(NScheme::NTypeIds::Uint64).SetNullable(false)
8341+
};
8342+
8343+
TTestHelper::TColumnTable testTable;
8344+
testTable.SetName("/Root/ColumnTableTest").SetPrimaryKey({ "id" }).SetSchema(schema);
8345+
testHelper.CreateTable(testTable);
8346+
8347+
TVector<NConstruction::IArrayBuilder::TPtr> dataBuilders;
8348+
dataBuilders.push_back(
8349+
NConstruction::TSimpleArrayConstructor<NConstruction::TIntSeqFiller<arrow::UInt64Type>>::BuildNotNullable("id", false));
8350+
auto batch = NConstruction::TRecordBatchConstructor(dataBuilders).BuildBatch(100);
8351+
testHelper.BulkUpsert(testTable, batch);
8352+
8353+
{
8354+
auto alterQueryAdd = TStringBuilder()
8355+
<< "ALTER TABLE `" << testTable.GetName() << "` ADD COLUMN column" << schema.size() + 1 << " Uint64;";
8356+
Cerr << alterQueryAdd << Endl;
8357+
auto alterAddResult = testHelper.GetSession().ExecuteSchemeQuery(alterQueryAdd).GetValueSync();
8358+
UNIT_ASSERT_VALUES_EQUAL_C(alterAddResult.GetStatus(), EStatus::SUCCESS, alterAddResult.GetIssues().ToString());
8359+
8360+
testHelper.BulkUpsert(testTable, batch);
8361+
testHelper.ReadData("SELECT COUNT(*) FROM `/Root/ColumnTableTest`", "[[100u]]");
8362+
8363+
auto alterQueryDrop = TStringBuilder()
8364+
<< "ALTER TABLE `" << testTable.GetName() << "` DROP COLUMN column" << schema.size() + 1 << ";";
8365+
Cerr << alterQueryDrop << Endl;
8366+
auto alterDropResult = testHelper.GetSession().ExecuteSchemeQuery(alterQueryDrop).GetValueSync();
8367+
UNIT_ASSERT_VALUES_EQUAL_C(alterDropResult.GetStatus(), EStatus::SUCCESS, alterDropResult.GetIssues().ToString());
8368+
testHelper.ReadData("SELECT COUNT(*) FROM `/Root/ColumnTableTest`", "[[100u]]");
8369+
}
8370+
8371+
{
8372+
auto alterQueryAdd = TStringBuilder()
8373+
<< "ALTER TABLE `" << testTable.GetName() << "` ADD COLUMN column" << schema.size() + 1 << " Uint64;";
8374+
Cerr << alterQueryAdd << Endl;
8375+
auto alterAddResult = testHelper.GetSession().ExecuteSchemeQuery(alterQueryAdd).GetValueSync();
8376+
UNIT_ASSERT_VALUES_EQUAL_C(alterAddResult.GetStatus(), EStatus::SUCCESS, alterAddResult.GetIssues().ToString());
8377+
8378+
testHelper.BulkUpsert(testTable, batch);
8379+
testHelper.ReadData("SELECT COUNT(*) FROM `/Root/ColumnTableTest`", "[[100u]]");
8380+
8381+
auto alterQueryDrop = TStringBuilder()
8382+
<< "ALTER TABLE `" << testTable.GetName() << "` DROP COLUMN column" << schema.size() + 1 << ";";
8383+
Cerr << alterQueryDrop << Endl;
8384+
auto alterDropResult = testHelper.GetSession().ExecuteSchemeQuery(alterQueryDrop).GetValueSync();
8385+
UNIT_ASSERT_VALUES_EQUAL_C(alterDropResult.GetStatus(), EStatus::SUCCESS, alterDropResult.GetIssues().ToString());
8386+
testHelper.ReadData("SELECT COUNT(*) FROM `/Root/ColumnTableTest`", "[[100u]]");
8387+
}
8388+
8389+
{
8390+
auto alterQueryAdd = TStringBuilder()
8391+
<< "ALTER TABLE `" << testTable.GetName() << "` ADD COLUMN column" << schema.size() + 1 << " Uint64;";
8392+
Cerr << alterQueryAdd << Endl;
8393+
auto alterAddResult = testHelper.GetSession().ExecuteSchemeQuery(alterQueryAdd).GetValueSync();
8394+
UNIT_ASSERT_VALUES_EQUAL_C(alterAddResult.GetStatus(), EStatus::SUCCESS, alterAddResult.GetIssues().ToString());
8395+
8396+
testHelper.BulkUpsert(testTable, batch);
8397+
testHelper.ReadData("SELECT COUNT(*) FROM `/Root/ColumnTableTest`", "[[100u]]");
8398+
8399+
auto alterQueryDrop = TStringBuilder()
8400+
<< "ALTER TABLE `" << testTable.GetName() << "` DROP COLUMN column" << schema.size() + 1 << ";";
8401+
Cerr << alterQueryDrop << Endl;
8402+
auto alterDropResult = testHelper.GetSession().ExecuteSchemeQuery(alterQueryDrop).GetValueSync();
8403+
UNIT_ASSERT_VALUES_EQUAL_C(alterDropResult.GetStatus(), EStatus::SUCCESS, alterDropResult.GetIssues().ToString());
8404+
testHelper.ReadData("SELECT COUNT(*) FROM `/Root/ColumnTableTest`", "[[100u]]");
8405+
}
8406+
8407+
{
8408+
auto alterQueryAdd = TStringBuilder()
8409+
<< "ALTER TABLE `" << testTable.GetName() << "` ADD COLUMN column" << schema.size() + 1 << " Uint64;";
8410+
Cerr << alterQueryAdd << Endl;
8411+
auto alterAddResult = testHelper.GetSession().ExecuteSchemeQuery(alterQueryAdd).GetValueSync();
8412+
UNIT_ASSERT_VALUES_EQUAL_C(alterAddResult.GetStatus(), EStatus::SUCCESS, alterAddResult.GetIssues().ToString());
8413+
8414+
testHelper.BulkUpsert(testTable, batch);
8415+
testHelper.ReadData("SELECT COUNT(*) FROM `/Root/ColumnTableTest`", "[[100u]]");
8416+
8417+
auto alterQueryDrop = TStringBuilder()
8418+
<< "ALTER TABLE `" << testTable.GetName() << "` DROP COLUMN column" << schema.size() + 1 << ";";
8419+
Cerr << alterQueryDrop << Endl;
8420+
auto alterDropResult = testHelper.GetSession().ExecuteSchemeQuery(alterQueryDrop).GetValueSync();
8421+
UNIT_ASSERT_VALUES_EQUAL_C(alterDropResult.GetStatus(), EStatus::SUCCESS, alterDropResult.GetIssues().ToString());
8422+
testHelper.ReadData("SELECT COUNT(*) FROM `/Root/ColumnTableTest`", "[[100u]]");
8423+
}
8424+
8425+
csController->EnableBackground(NYDBTest::ICSController::EBackground::Indexation);
8426+
csController->WaitIndexation(TDuration::Seconds(5));
8427+
}
83298428
}
83308429

83318430
Y_UNIT_TEST_SUITE(KqpOlapTypes) {

0 commit comments

Comments
 (0)