@@ -554,7 +554,7 @@ class TMonitoringProxy : public TActorBootstrapped<TMonitoringProxy> {
554
554
, TabletID(tabletId)
555
555
, Inflight(inflight)
556
556
{
557
- for (auto & p: Partitions) {
557
+ for (auto & p : Partitions) {
558
558
Results[p.first ].push_back (Sprintf (" Partition %u: NO DATA" , p.first ));
559
559
}
560
560
}
@@ -691,6 +691,10 @@ void TPersQueue::ApplyNewConfigAndReply(const TActorContext& ctx)
691
691
ClearNewConfig ();
692
692
693
693
for (auto & p : Partitions) { // change config for already created partitions
694
+ if (p.first .IsSupportivePartition ()) {
695
+ continue ;
696
+ }
697
+
694
698
ctx.Send (p.second .Actor , new TEvPQ::TEvChangePartitionConfig (TopicConverter, Config, BootstrapConfigTx ? *BootstrapConfigTx : NKikimrPQ::TBootstrapConfig ()));
695
699
}
696
700
ChangePartitionConfigInflight += Partitions.size ();
@@ -1871,13 +1875,19 @@ void TPersQueue::Handle(TEvPersQueue::TEvOffsets::TPtr& ev, const TActorContext&
1871
1875
}
1872
1876
ui32 cnt = 0 ;
1873
1877
for (auto & p : Partitions) {
1874
- cnt += p.second .InitDone ;
1878
+ if (p.first .IsSupportivePartition ()) {
1879
+ continue ;
1880
+ }
1881
+
1882
+ cnt += p.second .InitDone ;
1875
1883
}
1876
1884
TActorId ans = CreateOffsetsProxyActor (TabletID (), ev->Sender , cnt, ctx);
1877
1885
1878
1886
for (auto & p : Partitions) {
1879
- if (!p.second .InitDone )
1887
+ if (!p.second .InitDone || p. first . IsSupportivePartition ()) {
1880
1888
continue ;
1889
+ }
1890
+
1881
1891
THolder<TEvPQ::TEvPartitionOffsets> event = MakeHolder<TEvPQ::TEvPartitionOffsets>(ans, ev->Get ()->Record .HasClientId () ?
1882
1892
ev->Get ()->Record .GetClientId () : " " );
1883
1893
ctx.Send (p.second .Actor , event.Release ());
@@ -1935,15 +1945,20 @@ void TPersQueue::Handle(TEvPersQueue::TEvStatus::TPtr& ev, const TActorContext&
1935
1945
}
1936
1946
1937
1947
ui32 cnt = 0 ;
1938
- for (auto & [_, partitionInfo] : Partitions) {
1939
- cnt += partitionInfo.InitDone ;
1948
+ for (auto & [partitionId, partitionInfo] : Partitions) {
1949
+ if (partitionId.IsSupportivePartition ()) {
1950
+ continue ;
1951
+ }
1952
+
1953
+ cnt += partitionInfo.InitDone ;
1940
1954
}
1941
1955
1942
1956
TActorId ans = CreateStatusProxyActor (TabletID (), ev->Sender , cnt, ev->Cookie , ctx);
1943
1957
for (auto & p : Partitions) {
1944
- if (!p.second .InitDone ) {
1958
+ if (!p.second .InitDone || p. first . IsSupportivePartition () ) {
1945
1959
continue ;
1946
1960
}
1961
+
1947
1962
THolder<TEvPQ::TEvPartitionStatus> event;
1948
1963
if (ev->Get ()->Record .GetConsumers ().empty ()) {
1949
1964
event = MakeHolder<TEvPQ::TEvPartitionStatus>(ans, ev->Get ()->Record .HasClientId () ? ev->Get ()->Record .GetClientId () : " " ,
@@ -4554,7 +4569,11 @@ void TPersQueue::SendProposeTransactionAbort(const TActorId& target,
4554
4569
void TPersQueue::SendEvProposePartitionConfig (const TActorContext& ctx,
4555
4570
TDistributedTransaction& tx)
4556
4571
{
4557
- for (auto & [_, partition] : Partitions) {
4572
+ for (auto & [partitionId, partition] : Partitions) {
4573
+ if (partitionId.IsSupportivePartition ()) {
4574
+ continue ;
4575
+ }
4576
+
4558
4577
auto event = std::make_unique<TEvPQ::TEvProposePartitionConfig>(tx.Step , tx.TxId );
4559
4578
4560
4579
event->TopicConverter = tx.TopicConverter ;
@@ -4565,7 +4584,7 @@ void TPersQueue::SendEvProposePartitionConfig(const TActorContext& ctx,
4565
4584
}
4566
4585
4567
4586
tx.PartitionRepliesCount = 0 ;
4568
- tx.PartitionRepliesExpected = Partitions. size () ;
4587
+ tx.PartitionRepliesExpected = OriginalPartitionsCount ;
4569
4588
}
4570
4589
4571
4590
TActorId TPersQueue::GetPartitionQuoter (const TPartitionId& partition) {
0 commit comments