Skip to content

Commit a59ef51

Browse files
committed
ut
1 parent 29605a2 commit a59ef51

File tree

2 files changed

+65
-2
lines changed

2 files changed

+65
-2
lines changed

ydb/services/datastreams/datastreams_proxy.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -516,13 +516,15 @@ namespace NKikimr::NDataStreams::V1 {
516516
if (!GetProtoRequest()->has_partitioning_settings() ||
517517
(GetProtoRequest()->partitioning_settings().has_auto_partitioning_settings() &&
518518
GetProtoRequest()->partitioning_settings().auto_partitioning_settings().strategy() ==
519-
Ydb::DataStreams::V1::AutoPartitioningStrategy::AUTO_PARTITIONING_STRATEGY_DISABLED)) {
519+
Ydb::DataStreams::V1::AutoPartitioningStrategy::AUTO_PARTITIONING_STRATEGY_DISABLED)) {
520+
520521
if (!ValidateShardsCount(*GetProtoRequest(), pqGroupDescription, error))
521522
{
522523
return ReplyWithError(Ydb::StatusIds::BAD_REQUEST, static_cast<size_t>(NYds::EErrorCodes::BAD_REQUEST), error);
523524
}
524525

525526
groupConfig.SetTotalGroupCount(GetProtoRequest()->target_shard_count());
527+
526528
} else {
527529
auto r = ValidatePartitioningSettings(GetProtoRequest()->partitioning_settings());
528530
if (!r.empty()) {
@@ -535,6 +537,7 @@ namespace NKikimr::NDataStreams::V1 {
535537
auto& as = s.auto_partitioning_settings();
536538
switch(as.strategy()) {
537539
case Ydb::DataStreams::V1::AutoPartitioningStrategy::AUTO_PARTITIONING_STRATEGY_UNSPECIFIED:
540+
break;
538541
case Ydb::DataStreams::V1::AutoPartitioningStrategy::AUTO_PARTITIONING_STRATEGY_DISABLED:
539542
case Ydb::DataStreams::V1::AutoPartitioningStrategy::AutoPartitioningStrategy_INT_MAX_SENTINEL_DO_NOT_USE_:
540543
case Ydb::DataStreams::V1::AutoPartitioningStrategy::AutoPartitioningStrategy_INT_MIN_SENTINEL_DO_NOT_USE_:

ydb/services/datastreams/datastreams_ut.cpp

Lines changed: 61 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2706,7 +2706,6 @@ Y_UNIT_TEST_SUITE(DataStreams) {
27062706

27072707
TString streamName = "test-topic";
27082708
TString streamName2 = "test-topic-2";
2709-
27102709
{
27112710
NYdb::NTopic::TTopicClient pqClient(*testServer.Driver);
27122711
auto settings = NYdb::NTopic::TCreateTopicSettings()
@@ -2807,6 +2806,67 @@ Y_UNIT_TEST_SUITE(DataStreams) {
28072806
UNIT_ASSERT_VALUES_EQUAL(description.shards(4).parent_shard_id(), "shard-000001");
28082807
}
28092808

2809+
auto streamForAlterTest = "stream-alter-test";
2810+
{
2811+
auto result = testServer.DataStreamsClient->CreateStream(streamForAlterTest,
2812+
NYDS_V1::TCreateStreamSettings()
2813+
.ShardCount(3)
2814+
).ExtractValueSync();
2815+
UNIT_ASSERT_VALUES_EQUAL(result.IsTransportError(), false);
2816+
if (result.GetStatus() != EStatus::SUCCESS) {
2817+
result.GetIssues().PrintTo(Cerr);
2818+
}
2819+
UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString());
2820+
}
2821+
2822+
{
2823+
auto result = testServer.DataStreamsClient->DescribeStream(streamForAlterTest).ExtractValueSync();
2824+
UNIT_ASSERT_VALUES_EQUAL(result.IsTransportError(), false);
2825+
Cerr << result.GetIssues().ToString() << "\n";
2826+
UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString());
2827+
2828+
auto& d = result.GetResult().stream_description();
2829+
UNIT_ASSERT_VALUES_EQUAL(d.shards().size(), 3);
2830+
UNIT_ASSERT_VALUES_EQUAL(d.stream_status(), YDS_V1::StreamDescription::ACTIVE);
2831+
UNIT_ASSERT_VALUES_EQUAL(d.stream_name(), streamForAlterTest);
2832+
UNIT_ASSERT_VALUES_EQUAL(d.stream_arn(), streamForAlterTest);
2833+
2834+
UNIT_ASSERT_VALUES_EQUAL(d.partitioning_settings().auto_partitioning_settings().strategy(), ::Ydb::DataStreams::V1::AutoPartitioningStrategy::AUTO_PARTITIONING_STRATEGY_DISABLED);
2835+
}
2836+
2837+
{
2838+
auto result = testServer.DataStreamsClient->UpdateStream(streamForAlterTest,
2839+
NYDS_V1::TUpdateStreamSettings()
2840+
.TargetShardCount(5)
2841+
.BeginConfigurePartitioningSettings()
2842+
.BeginConfigureAutoPartitioningSettings()
2843+
.Strategy(NYdb::NDataStreams::V1::EAutoPartitioningStrategy::Disabled)
2844+
.EndConfigureAutoPartitioningSettings()
2845+
.EndConfigurePartitioningSettings()
2846+
).ExtractValueSync();
2847+
2848+
UNIT_ASSERT_VALUES_EQUAL(result.IsTransportError(), false);
2849+
if (result.GetStatus() != EStatus::SUCCESS) {
2850+
result.GetIssues().PrintTo(Cerr);
2851+
}
2852+
UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString());
2853+
}
2854+
2855+
{
2856+
auto result = testServer.DataStreamsClient->DescribeStream(streamForAlterTest).ExtractValueSync();
2857+
UNIT_ASSERT_VALUES_EQUAL(result.IsTransportError(), false);
2858+
Cerr << result.GetIssues().ToString() << "\n";
2859+
UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString());
2860+
2861+
auto& d = result.GetResult().stream_description();
2862+
UNIT_ASSERT_VALUES_EQUAL(d.shards().size(), 5);
2863+
UNIT_ASSERT_VALUES_EQUAL(d.stream_status(), YDS_V1::StreamDescription::ACTIVE);
2864+
UNIT_ASSERT_VALUES_EQUAL(d.stream_name(), streamForAlterTest);
2865+
UNIT_ASSERT_VALUES_EQUAL(d.stream_arn(), streamForAlterTest);
2866+
2867+
UNIT_ASSERT_VALUES_EQUAL(d.partitioning_settings().auto_partitioning_settings().strategy(), ::Ydb::DataStreams::V1::AutoPartitioningStrategy::AUTO_PARTITIONING_STRATEGY_DISABLED);
2868+
}
2869+
28102870
{
28112871
auto result = testServer.DataStreamsClient->CreateStream(streamName2,
28122872
NYDS_V1::TCreateStreamSettings()

0 commit comments

Comments
 (0)