@@ -497,7 +497,7 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
497
497
private:
498
498
TIndexBuildId BuildId;
499
499
500
- TDeque<std::tuple< TTabletId, ui64, THolder<IEventBase> >> ToTabletSend;
500
+ TMap< TTabletId, THolder<IEventBase>> ToTabletSend;
501
501
502
502
template <bool WithSnapshot = true , typename Record>
503
503
TTabletId CommonFillRecord (Record& record, TShardIdx shardIdx, TIndexBuildInfo& buildInfo) {
@@ -551,9 +551,9 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
551
551
552
552
auto shardId = CommonFillRecord (ev->Record , shardIdx, buildInfo);
553
553
ev->Record .SetSeed (ui64 (shardId));
554
- LOG_D (" TTxBuildProgress: TEvSampleKRequest: " << ev->Record .ShortDebugString ());
554
+ LOG_N (" TTxBuildProgress: TEvSampleKRequest: " << ev->Record .ShortDebugString ());
555
555
556
- ToTabletSend.emplace_back (shardId, ui64 (BuildId) , std::move (ev));
556
+ ToTabletSend.emplace (shardId, std::move (ev));
557
557
}
558
558
559
559
void SendKMeansReshuffleRequest (TShardIdx shardIdx, TIndexBuildInfo& buildInfo) {
@@ -595,9 +595,9 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
595
595
r.ClearClusters ();
596
596
return r.ShortDebugString ();
597
597
};
598
- LOG_D (" TTxBuildProgress: TEvReshuffleKMeansRequest: " << toDebugStr (ev->Record ));
598
+ LOG_N (" TTxBuildProgress: TEvReshuffleKMeansRequest: " << toDebugStr (ev->Record ));
599
599
600
- ToTabletSend.emplace_back (shardId, ui64 (BuildId) , std::move (ev));
600
+ ToTabletSend.emplace (shardId, std::move (ev));
601
601
}
602
602
603
603
void SendKMeansLocalRequest (TShardIdx shardIdx, TIndexBuildInfo& buildInfo) {
@@ -644,9 +644,9 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
644
644
645
645
auto shardId = CommonFillRecord (ev->Record , shardIdx, buildInfo);
646
646
ev->Record .SetSeed (ui64 (shardId));
647
- LOG_D (" TTxBuildProgress: TEvLocalKMeansRequest: " << ev->Record .ShortDebugString ());
647
+ LOG_N (" TTxBuildProgress: TEvLocalKMeansRequest: " << ev->Record .ShortDebugString ());
648
648
649
- ToTabletSend.emplace_back (shardId, ui64 (BuildId) , std::move (ev));
649
+ ToTabletSend.emplace (shardId, std::move (ev));
650
650
}
651
651
652
652
void SendPrefixKMeansRequest (TShardIdx shardIdx, TIndexBuildInfo& buildInfo) {
@@ -685,9 +685,9 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
685
685
686
686
auto shardId = CommonFillRecord<false >(ev->Record , shardIdx, buildInfo);
687
687
ev->Record .SetSeed (ui64 (shardId));
688
- LOG_D (" TTxBuildProgress: TEvPrefixKMeansRequest: " << ev->Record .ShortDebugString ());
688
+ LOG_N (" TTxBuildProgress: TEvPrefixKMeansRequest: " << ev->Record .ShortDebugString ());
689
689
690
- ToTabletSend.emplace_back (shardId, ui64 (BuildId) , std::move (ev));
690
+ ToTabletSend.emplace (shardId, std::move (ev));
691
691
}
692
692
693
693
void SendBuildSecondaryIndexRequest (TShardIdx shardIdx, TIndexBuildInfo& buildInfo) {
@@ -736,9 +736,9 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
736
736
737
737
auto shardId = CommonFillRecord (ev->Record , shardIdx, buildInfo);
738
738
739
- LOG_D (" TTxBuildProgress: TEvBuildIndexCreateRequest: " << ev->Record .ShortDebugString ());
739
+ LOG_N (" TTxBuildProgress: TEvBuildIndexCreateRequest: " << ev->Record .ShortDebugString ());
740
740
741
- ToTabletSend.emplace_back (shardId, ui64 (BuildId) , std::move (ev));
741
+ ToTabletSend.emplace (shardId, std::move (ev));
742
742
}
743
743
744
744
void SendUploadSampleKRequest (TIndexBuildInfo& buildInfo) {
@@ -757,7 +757,8 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
757
757
buildInfo.DoneShards = {};
758
758
buildInfo.InProgressShards = {};
759
759
buildInfo.ToUploadShards = {};
760
-
760
+
761
+ ToTabletSend.clear ();
761
762
Self->IndexBuildPipes .CloseAll (BuildId, ctx);
762
763
}
763
764
@@ -791,6 +792,9 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
791
792
}
792
793
793
794
void AddAllShards (TIndexBuildInfo& buildInfo) {
795
+ ToTabletSend.clear ();
796
+ Self->IndexBuildPipes .CloseAll (BuildId, Self->ActorContext ());
797
+
794
798
for (const auto & [idx, status] : buildInfo.Shards ) {
795
799
AddShard (buildInfo, idx, status);
796
800
}
@@ -1102,7 +1106,8 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
1102
1106
Y_ABORT_UNLESS (buildInfoPtr);
1103
1107
auto & buildInfo = *buildInfoPtr->Get ();
1104
1108
1105
- LOG_I (" TTxBuildProgress: Execute: " << BuildId << " " << buildInfo.State << " " << buildInfo);
1109
+ LOG_N (" TTxBuildProgress: Execute: " << BuildId << " " << buildInfo.State );
1110
+ LOG_D (" TTxBuildProgress: Execute: " << BuildId << " " << buildInfo.State << " " << buildInfo);
1106
1111
1107
1112
switch (buildInfo.State ) {
1108
1113
case TIndexBuildInfo::EState::Invalid:
@@ -1390,8 +1395,8 @@ struct TSchemeShard::TIndexBuilder::TTxProgress: public TSchemeShard::TIndexBuil
1390
1395
}
1391
1396
1392
1397
void DoComplete (const TActorContext& ctx) override {
1393
- for (auto & x : ToTabletSend) {
1394
- Self->IndexBuildPipes .Create (BuildId, std::get< 0 >(x) , std::move (std::get< 2 >(x) ), ctx);
1398
+ for (auto & [shardId, ev] : ToTabletSend) {
1399
+ Self->IndexBuildPipes .Send (BuildId, shardId , std::move (ev ), ctx);
1395
1400
}
1396
1401
ToTabletSend.clear ();
1397
1402
}
@@ -1466,7 +1471,7 @@ struct TSchemeShard::TIndexBuilder::TTxReplyRetry: public TSchemeShard::TIndexBu
1466
1471
const auto & tabletId = PipeRetry.TabletId ;
1467
1472
const auto & shardIdx = Self->GetShardIdx (tabletId);
1468
1473
1469
- LOG_I (" TTxReply : PipeRetry, id# " << buildId
1474
+ LOG_N (" TTxReply : PipeRetry, id# " << buildId
1470
1475
<< " , tabletId# " << tabletId
1471
1476
<< " , shardIdx# " << shardIdx);
1472
1477
@@ -2416,8 +2421,8 @@ struct TSchemeShard::TIndexBuilder::TTxReplyModify: public TSchemeShard::TIndexB
2416
2421
<< " , BuildIndexId: " << buildInfo.Id
2417
2422
<< " , status: " << Ydb::StatusIds::StatusCode_Name (status)
2418
2423
<< " , error: " << buildInfo.Issue
2419
- << " , replyTo: " << buildInfo.CreateSender .ToString ());
2420
- LOG_D ( " Message: \n " << responseEv->Record .ShortDebugString ());
2424
+ << " , replyTo: " << buildInfo.CreateSender .ToString ()
2425
+ << " , message: " << responseEv->Record .ShortDebugString ());
2421
2426
2422
2427
Send (buildInfo.CreateSender , std::move (responseEv), 0 , buildInfo.SenderCookie );
2423
2428
}
0 commit comments