@@ -980,11 +980,15 @@ def from_proto(msg: ydb_topic_pb2.PartitioningSettings) -> "PartitioningSettings
980980 )
981981
982982 def to_proto (self ) -> ydb_topic_pb2 .PartitioningSettings :
983+ auto_partitioning_settings = None
984+ if self .auto_partitioning_settings is not None :
985+ auto_partitioning_settings = self .auto_partitioning_settings .to_proto ()
986+
983987 return ydb_topic_pb2 .PartitioningSettings (
984988 min_active_partitions = self .min_active_partitions ,
985989 partition_count_limit = self .partition_count_limit ,
986990 max_active_partitions = self .max_active_partitions ,
987- auto_partitioning_settings = self . auto_partitioning_settings . to_proto () ,
991+ auto_partitioning_settings = auto_partitioning_settings ,
988992 )
989993
990994
@@ -1041,6 +1045,9 @@ def from_public(
10411045
10421046 @staticmethod
10431047 def from_proto (msg : ydb_topic_pb2 .AutoPartitioningSettings ) -> AutoPartitioningSettings :
1048+ if msg is None :
1049+ return None
1050+
10441051 return AutoPartitioningSettings (
10451052 strategy = AutoPartitioningStrategy .from_proto (msg .strategy ),
10461053 partition_write_speed = AutoPartitioningWriteSpeedStrategy .from_proto (msg .partition_write_speed ),
@@ -1074,7 +1081,12 @@ def to_proto(self):
10741081 )
10751082
10761083 @staticmethod
1077- def from_proto (msg : ydb_topic_pb2 .AutoPartitioningWriteSpeedStrategy ) -> AutoPartitioningWriteSpeedStrategy :
1084+ def from_proto (
1085+ msg : Optional [ydb_topic_pb2 .AutoPartitioningWriteSpeedStrategy ],
1086+ ) -> Optional [AutoPartitioningWriteSpeedStrategy ]:
1087+ if msg is None :
1088+ return None
1089+
10781090 return AutoPartitioningWriteSpeedStrategy (
10791091 stabilization_window = timedelta_from_proto_duration (msg .stabilization_window ),
10801092 up_utilization_percent = msg .up_utilization_percent ,
@@ -1090,10 +1102,15 @@ class AlterPartitioningSettings(IToProto):
10901102 alter_auto_partitioning_settings : Optional [AlterAutoPartitioningSettings ]
10911103
10921104 def to_proto (self ) -> ydb_topic_pb2 .AlterPartitioningSettings :
1105+ alter_auto_partitioning_settings = None
1106+ if self .alter_auto_partitioning_settings is not None :
1107+ alter_auto_partitioning_settings = self .alter_auto_partitioning_settings .to_proto ()
1108+
10931109 return ydb_topic_pb2 .AlterPartitioningSettings (
10941110 set_min_active_partitions = self .set_min_active_partitions ,
10951111 set_partition_count_limit = self .set_partition_count_limit ,
10961112 set_max_active_partitions = self .set_max_active_partitions ,
1113+ alter_auto_partitioning_settings = alter_auto_partitioning_settings ,
10971114 )
10981115
10991116
@@ -1109,12 +1126,12 @@ def from_public(
11091126 if not settings :
11101127 return None
11111128
1112- return AutoPartitioningSettings (
1113- strategy = settings .set_strategy ,
1114- partition_write_speed = AlterAutoPartitioningWriteSpeedStrategy (
1115- stabilization_window = settings .set_stabilization_window ,
1116- up_utilization_percent = settings .set_up_utilization_percent ,
1117- down_utilization_percent = settings .set_down_utilization_percent ,
1129+ return AlterAutoPartitioningSettings (
1130+ set_strategy = settings .set_strategy ,
1131+ set_partition_write_speed = AlterAutoPartitioningWriteSpeedStrategy (
1132+ set_stabilization_window = settings .set_stabilization_window ,
1133+ set_up_utilization_percent = settings .set_up_utilization_percent ,
1134+ set_down_utilization_percent = settings .set_down_utilization_percent ,
11181135 ),
11191136 )
11201137
@@ -1185,9 +1202,13 @@ class CreateTopicRequest(IToProto, IFromPublic):
11851202 metering_mode : "MeteringMode"
11861203
11871204 def to_proto (self ) -> ydb_topic_pb2 .CreateTopicRequest :
1205+ partitioning_settings = None
1206+ if self .partitioning_settings is not None :
1207+ partitioning_settings = self .partitioning_settings .to_proto ()
1208+
11881209 return ydb_topic_pb2 .CreateTopicRequest (
11891210 path = self .path ,
1190- partitioning_settings = self . partitioning_settings . to_proto () ,
1211+ partitioning_settings = partitioning_settings ,
11911212 retention_period = proto_duration_from_timedelta (self .retention_period ),
11921213 retention_storage_mb = self .retention_storage_mb ,
11931214 supported_codecs = self .supported_codecs .to_proto (),
@@ -1295,7 +1316,7 @@ def from_public(req: ydb_topic_public_types.AlterTopicRequestParams) -> AlterTop
12951316
12961317 alter_auto_partitioning_settings = None
12971318 if req .alter_auto_partitioning_settings is not None :
1298- alter_auto_partitioning_settings = AutoPartitioningSettings .from_public (
1319+ alter_auto_partitioning_settings = AlterAutoPartitioningSettings .from_public (
12991320 req .alter_auto_partitioning_settings
13001321 )
13011322
0 commit comments