11#pragma once
22
33#include " change_exchange.h"
4- #include " change_exchange_helpers.h"
54
6- #include < ydb/core/base/appdata.h>
7- #include < ydb/core/change_exchange/change_exchange.h>
85#include < ydb/library/actors/core/actor.h>
96#include < ydb/library/actors/core/hfunc.h>
107#include < ydb/library/actors/core/mon.h>
1411#include < util/generic/set.h>
1512#include < util/string/builder.h>
1613
17- namespace NKikimr {
18- namespace NDataShard {
14+ namespace NKikimr ::NChangeExchange {
1915
2016struct TEvChangeExchangePrivate {
2117 enum EEv {
@@ -61,8 +57,8 @@ class IChangeSender {
6157 virtual IActor* CreateSender (ui64 partitionId) = 0;
6258 virtual void RemoveRecords () = 0;
6359
64- virtual void EnqueueRecords (TVector<NChangeExchange:: TEvChangeExchange::TEvEnqueueRecords::TRecordInfo>&& records) = 0;
65- virtual void ProcessRecords (TVector<NChangeExchange:: IChangeRecord::TPtr>&& records) = 0;
60+ virtual void EnqueueRecords (TVector<TEvChangeExchange::TEvEnqueueRecords::TRecordInfo>&& records) = 0;
61+ virtual void ProcessRecords (TVector<IChangeRecord::TPtr>&& records) = 0;
6662 virtual void ForgetRecords (TVector<ui64>&& records) = 0;
6763 virtual void OnReady (ui64 partitionId) = 0;
6864 virtual void OnGone (ui64 partitionId) = 0;
@@ -75,18 +71,18 @@ class IChangeSenderResolver {
7571 virtual void Resolve () = 0;
7672 virtual bool IsResolving () const = 0;
7773 virtual bool IsResolved () const = 0;
78- virtual ui64 GetPartitionId (NChangeExchange:: IChangeRecord::TPtr record) const = 0;
74+ virtual ui64 GetPartitionId (IChangeRecord::TPtr record) const = 0;
7975};
8076
8177class TBaseChangeSender : public IChangeSender {
82- using TEnqueuedRecord = NChangeExchange:: TEvChangeExchange::TEvRequestRecords::TRecordInfo;
83- using TRequestedRecord = NChangeExchange:: TEvChangeExchange::TEvRequestRecords::TRecordInfo;
78+ using TEnqueuedRecord = TEvChangeExchange::TEvRequestRecords::TRecordInfo;
79+ using TRequestedRecord = TEvChangeExchange::TEvRequestRecords::TRecordInfo;
8480
8581 struct TSender {
8682 TActorId ActorId;
8783 bool Ready = false ;
8884 TVector<TEnqueuedRecord> Pending;
89- TVector<NChangeExchange:: IChangeRecord::TPtr> Prepared;
85+ TVector<IChangeRecord::TPtr> Prepared;
9086 TVector<ui64> Broadcasting;
9187 };
9288
@@ -108,7 +104,7 @@ class TBaseChangeSender: public IChangeSender {
108104 void SendPreparedRecords (ui64 partitionId);
109105 void ReEnqueueRecords (const TSender& sender);
110106
111- TBroadcast& EnsureBroadcast (NChangeExchange:: IChangeRecord::TPtr record);
107+ TBroadcast& EnsureBroadcast (IChangeRecord::TPtr record);
112108 bool AddBroadcastPartition (ui64 order, ui64 partitionId);
113109 bool RemoveBroadcastPartition (ui64 order, ui64 partitionId);
114110 bool CompleteBroadcastPartition (ui64 order, ui64 partitionId);
@@ -124,35 +120,35 @@ class TBaseChangeSender: public IChangeSender {
124120 remove.push_back (record.Order );
125121 }
126122
127- ActorOps->Send (DataShard. ActorId , new NChangeExchange:: TEvChangeExchange::TEvRemoveRecords (std::move (remove)));
123+ ActorOps->Send (ChangeServer , new TEvChangeExchange::TEvRemoveRecords (std::move (remove)));
128124 }
129125
130126 template <>
131127 void RemoveRecords (TVector<ui64>&& records) {
132- ActorOps->Send (DataShard. ActorId , new NChangeExchange:: TEvChangeExchange::TEvRemoveRecords (std::move (records)));
128+ ActorOps->Send (ChangeServer , new TEvChangeExchange::TEvRemoveRecords (std::move (records)));
133129 }
134130
135131 void CreateSenders (const TVector<ui64>& partitionIds, bool partitioningChanged = true ) override ;
136132 void KillSenders () override ;
137133 void RemoveRecords () override ;
138134
139- void EnqueueRecords (TVector<NChangeExchange:: TEvChangeExchange::TEvEnqueueRecords::TRecordInfo>&& records) override ;
140- void ProcessRecords (TVector<NChangeExchange:: IChangeRecord::TPtr>&& records) override ;
135+ void EnqueueRecords (TVector<TEvChangeExchange::TEvEnqueueRecords::TRecordInfo>&& records) override ;
136+ void ProcessRecords (TVector<IChangeRecord::TPtr>&& records) override ;
141137 void ForgetRecords (TVector<ui64>&& records) override ;
142138 void OnReady (ui64 partitionId) override ;
143139 void OnGone (ui64 partitionId) override ;
144140
145141 explicit TBaseChangeSender (IActorOps* actorOps, IChangeSenderResolver* resolver,
146- const TDataShardId& dataShard , const TPathId& pathId);
142+ const TActorId& changeServer , const TPathId& pathId);
147143
148- void RenderHtmlPage (TEvChangeExchange::ESenderType type , NMon::TEvRemoteHttpInfo::TPtr& ev, const TActorContext& ctx);
144+ void RenderHtmlPage (ui64 tabletId , NMon::TEvRemoteHttpInfo::TPtr& ev, const TActorContext& ctx);
149145
150146private:
151147 IActorOps* const ActorOps;
152148 IChangeSenderResolver* const Resolver;
153149
154150protected:
155- const TDataShardId DataShard ;
151+ const TActorId ChangeServer ;
156152 const TPathId PathId;
157153
158154private:
@@ -162,12 +158,11 @@ class TBaseChangeSender: public IChangeSender {
162158 THashMap<ui64, TSender> Senders; // ui64 is partition id
163159 TSet<TEnqueuedRecord> Enqueued;
164160 TSet<TRequestedRecord> PendingBody;
165- TMap<ui64, NChangeExchange:: IChangeRecord::TPtr> PendingSent; // ui64 is order
161+ TMap<ui64, IChangeRecord::TPtr> PendingSent; // ui64 is order
166162 THashMap<ui64, TBroadcast> Broadcasting; // ui64 is order
167163
168164 TVector<ui64> GonePartitions;
169165
170166}; // TBaseChangeSender
171167
172- } // NDataShard
173- } // NKikimr
168+ }
0 commit comments