@@ -246,6 +246,7 @@ class TPartition : public TBaseActor<TPartition> {
246246 void Handle (TEvents::TEvPoisonPill::TPtr& ev, const TActorContext& ctx);
247247 void Handle (TEvPQ::TEvSubDomainStatus::TPtr& ev, const TActorContext& ctx);
248248 void Handle (TEvPQ::TEvRunCompaction::TPtr& ev);
249+ void Handle (TEvPQ::TEvForceCompaction::TPtr& ev);
249250 void Handle (TEvPQ::TEvExclusiveLockAcquired::TPtr& ev);
250251 void Handle (TEvPQ::TBroadcastPartitionError::TPtr& ev, const TActorContext& ctx);
251252 void HandleMonitoring (TEvPQ::TEvMonRequest::TPtr& ev, const TActorContext& ctx);
@@ -596,6 +597,7 @@ class TPartition : public TBaseActor<TPartition> {
596597 HFuncTraced (TEvPQ::TEvDeletePartition, HandleOnInit);
597598 IgnoreFunc (TEvPQ::TEvTxBatchComplete);
598599 hFuncTraced (TEvPQ::TEvRunCompaction, Handle);
600+ hFuncTraced (TEvPQ::TEvForceCompaction, Handle);
599601 default :
600602 if (!Initializer.Handle (ev)) {
601603 ALOG_ERROR (NKikimrServices::PERSQUEUE, " Unexpected " << EventStr (" StateInit" , ev));
@@ -664,6 +666,7 @@ class TPartition : public TBaseActor<TPartition> {
664666 HFuncTraced (TEvPQ::TEvDeletePartition, Handle);
665667 IgnoreFunc (TEvPQ::TEvTxBatchComplete);
666668 hFuncTraced (TEvPQ::TEvRunCompaction, Handle);
669+ hFuncTraced (TEvPQ::TEvForceCompaction, Handle);
667670 default :
668671 ALOG_ERROR (NKikimrServices::PERSQUEUE, " Unexpected " << EventStr (" StateIdle" , ev));
669672 break ;
@@ -1116,7 +1119,7 @@ class TPartition : public TBaseActor<TPartition> {
11161119 const TEvPQ::TEvBlobResponse* blobResponse,
11171120 const TActorContext& ctx);
11181121
1119- void TryRunCompaction ();
1122+ void TryRunCompaction (bool force = false );
11201123 void BlobsForCompactionWereRead (const TVector<NPQ::TRequestedBlob>& blobs);
11211124 void BlobsForCompactionWereWrite ();
11221125 ui64 NextReadCookie ();
0 commit comments