summaryrefslogtreecommitdiffstats
path: root/library/cpp
diff options
context:
space:
mode:
authoralexvru <[email protected]>2023-04-14 16:49:48 +0300
committeralexvru <[email protected]>2023-04-14 16:49:48 +0300
commitc51441779ee2b5294f551a2e52d12990f521d5e1 (patch)
tree62ce56ee93eb4e23dfce2f9fe0daa27e987164c0 /library/cpp
parent0c9d88d453c408129ebe7e3f3085f588d9f63a93 (diff)
Remove TEventDescr1 support from IC
Diffstat (limited to 'library/cpp')
-rw-r--r--library/cpp/actors/interconnect/interconnect_channel.cpp38
-rw-r--r--library/cpp/actors/interconnect/interconnect_channel.h2
-rw-r--r--library/cpp/actors/interconnect/interconnect_handshake.cpp8
-rw-r--r--library/cpp/actors/interconnect/interconnect_tcp_input_session.cpp44
-rw-r--r--library/cpp/actors/interconnect/packet.h10
-rw-r--r--library/cpp/actors/interconnect/types.h1
6 files changed, 30 insertions, 73 deletions
diff --git a/library/cpp/actors/interconnect/interconnect_channel.cpp b/library/cpp/actors/interconnect/interconnect_channel.cpp
index 69cc5e946ab..316d57551d8 100644
--- a/library/cpp/actors/interconnect/interconnect_channel.cpp
+++ b/library/cpp/actors/interconnect/interconnect_channel.cpp
@@ -12,7 +12,7 @@ LWTRACE_USING(ACTORLIB_PROVIDER);
namespace NActors {
bool TEventOutputChannel::FeedDescriptor(TTcpPacketOutTask& task, TEventHolder& event, ui64 *weightConsumed) {
- const size_t descrSize = Params.UseExtendedTraceFmt ? sizeof(TEventDescr2) : sizeof(TEventDescr1);
+ const size_t descrSize = sizeof(TEventDescr2);
const size_t amount = sizeof(TChannelPart) + descrSize;
if (task.GetVirtualFreeAmount() < amount) {
return false;
@@ -32,31 +32,17 @@ namespace NActors {
part->Channel = ChannelId | TChannelPart::LastPartFlag;
part->Size = descrSize;
- void *descr = part + 1;
- if (Params.UseExtendedTraceFmt) {
- auto *p = static_cast<TEventDescr2*>(descr);
- *p = {
- event.Descr.Type,
- event.Descr.Flags,
- event.Descr.Recipient,
- event.Descr.Sender,
- event.Descr.Cookie,
- {},
- event.Descr.Checksum
- };
- traceId.Serialize(&p->TraceId);
- } else {
- auto *p = static_cast<TEventDescr1*>(descr);
- *p = {
- event.Descr.Type,
- event.Descr.Flags,
- event.Descr.Recipient,
- event.Descr.Sender,
- event.Descr.Cookie,
- {},
- event.Descr.Checksum
- };
- }
+ auto *p = reinterpret_cast<TEventDescr2*>(part + 1);
+ *p = {
+ event.Descr.Type,
+ event.Descr.Flags,
+ event.Descr.Recipient,
+ event.Descr.Sender,
+ event.Descr.Cookie,
+ {},
+ event.Descr.Checksum
+ };
+ traceId.Serialize(&p->TraceId);
task.AppendBuf(part, amount);
*weightConsumed += amount;
diff --git a/library/cpp/actors/interconnect/interconnect_channel.h b/library/cpp/actors/interconnect/interconnect_channel.h
index 312eff2666b..7612c31c76c 100644
--- a/library/cpp/actors/interconnect/interconnect_channel.h
+++ b/library/cpp/actors/interconnect/interconnect_channel.h
@@ -57,7 +57,7 @@ namespace NActors {
std::pair<ui32, TEventHolder*> Push(IEventHandle& ev) {
TEventHolder& event = Pool.Allocate(Queue);
- const ui32 bytes = event.Fill(ev) + (Params.UseExtendedTraceFmt ? sizeof(TEventDescr2) : sizeof(TEventDescr1));
+ const ui32 bytes = event.Fill(ev) + sizeof(TEventDescr2);
OutputQueueSize += bytes;
if (event.Span = NWilson::TSpan(15 /*max verbosity*/, NWilson::TTraceId(ev.TraceId), "Interconnect.Queue")) {
event.Span
diff --git a/library/cpp/actors/interconnect/interconnect_handshake.cpp b/library/cpp/actors/interconnect/interconnect_handshake.cpp
index 7baf6a31868..a8aeca78661 100644
--- a/library/cpp/actors/interconnect/interconnect_handshake.cpp
+++ b/library/cpp/actors/interconnect/interconnect_handshake.cpp
@@ -810,12 +810,13 @@ namespace NActors {
if (!success.GetUseModernFrame()) {
generateError("UseModernFrame not set, obsolete peer version");
+ } else if (!success.GetUseExtendedTraceFmt()) {
+ generateError("UseExtendedTraceFmt not set, obsolete peer version");
}
// recover flags
Params.Encryption = success.GetStartEncryption();
Params.AuthOnly = Params.Encryption && success.GetAuthOnly();
- Params.UseExtendedTraceFmt = success.GetUseExtendedTraceFmt();
Params.UseExternalDataChannel = success.GetUseExternalDataChannel();
if (success.HasServerScopeId()) {
ParsePeerScopeId(success.GetServerScopeId());
@@ -998,10 +999,11 @@ namespace NActors {
if (!request.GetRequestModernFrame()) {
generateError("RequestModernFrame not set, obsolete peer version");
+ } else if (!request.GetRequestExtendedTraceFmt()) {
+ generateError("RequestExtendedTraceFmt not set, obsolete peer version");
}
Params.AuthOnly = Params.Encryption && request.GetRequestAuthOnly() && Common->Settings.TlsAuthOnly;
- Params.UseExtendedTraceFmt = request.GetRequestExtendedTraceFmt();
Params.UseExternalDataChannel = request.GetRequestExternalDataChannel() && Common->Settings.EnableExternalDataChannel;
if (Params.UseExternalDataChannel) {
@@ -1039,7 +1041,7 @@ namespace NActors {
}
success.SetUseModernFrame(true);
success.SetAuthOnly(Params.AuthOnly);
- success.SetUseExtendedTraceFmt(Params.UseExtendedTraceFmt);
+ success.SetUseExtendedTraceFmt(true);
success.SetUseExternalDataChannel(Params.UseExternalDataChannel);
SendExBlock(MainChannel, record, "ExReply");
diff --git a/library/cpp/actors/interconnect/interconnect_tcp_input_session.cpp b/library/cpp/actors/interconnect/interconnect_tcp_input_session.cpp
index ea239780a7f..ad2da30ec3a 100644
--- a/library/cpp/actors/interconnect/interconnect_tcp_input_session.cpp
+++ b/library/cpp/actors/interconnect/interconnect_tcp_input_session.cpp
@@ -268,42 +268,22 @@ namespace NActors {
Metrics->AddInputChannelsIncomingTraffic(channel, sizeof(part) + part.Size);
- char buffer[Max(sizeof(TEventDescr1), sizeof(TEventDescr2))];
- auto& v1 = reinterpret_cast<TEventDescr1&>(buffer);
- auto& v2 = reinterpret_cast<TEventDescr2&>(buffer);
+ TEventDescr2 v2;
if (~part.Channel & TChannelPart::LastPartFlag) {
Payload.ExtractFront(part.Size, eventData);
- } else if (part.Size != sizeof(v1) && part.Size != sizeof(v2)) {
+ } else if (part.Size != sizeof(v2)) {
LOG_CRIT_IC_SESSION("ICIS11", "incorrect last part of an event");
return DestroySession(TDisconnectReason::FormatError());
- } else if (Payload.ExtractFrontPlain(buffer, part.Size)) {
- TEventData descr;
-
- switch (part.Size) {
- case sizeof(TEventDescr1):
- descr = {
- v1.Type,
- v1.Flags,
- v1.Recipient,
- v1.Sender,
- v1.Cookie,
- NWilson::TTraceId(), // do not accept traces with old format
- v1.Checksum
- };
- break;
-
- case sizeof(TEventDescr2):
- descr = {
- v2.Type,
- v2.Flags,
- v2.Recipient,
- v2.Sender,
- v2.Cookie,
- NWilson::TTraceId(v2.TraceId),
- v2.Checksum
- };
- break;
- }
+ } else if (Payload.ExtractFrontPlain(&v2, part.Size)) {
+ TEventData descr = {
+ v2.Type,
+ v2.Flags,
+ v2.Recipient,
+ v2.Sender,
+ v2.Cookie,
+ NWilson::TTraceId(v2.TraceId),
+ v2.Checksum
+ };
Metrics->IncInputChannelsIncomingEvents(channel);
ProcessEvent(*eventData, descr);
diff --git a/library/cpp/actors/interconnect/packet.h b/library/cpp/actors/interconnect/packet.h
index d29d35a2076..501fb08ab1e 100644
--- a/library/cpp/actors/interconnect/packet.h
+++ b/library/cpp/actors/interconnect/packet.h
@@ -61,16 +61,6 @@ struct TEventData {
};
#pragma pack(push, 1)
-struct TEventDescr1 {
- ui32 Type;
- ui32 Flags;
- TActorId Recipient;
- TActorId Sender;
- ui64 Cookie;
- char TraceId[16]; // obsolete trace id format
- ui32 Checksum;
-};
-
struct TEventDescr2 {
ui32 Type;
ui32 Flags;
diff --git a/library/cpp/actors/interconnect/types.h b/library/cpp/actors/interconnect/types.h
index f2feda03f2d..3963f3107d2 100644
--- a/library/cpp/actors/interconnect/types.h
+++ b/library/cpp/actors/interconnect/types.h
@@ -53,7 +53,6 @@ namespace NActors {
struct TSessionParams {
bool Encryption = {};
bool AuthOnly = {};
- bool UseExtendedTraceFmt = {};
bool UseExternalDataChannel = {};
TString AuthCN;
NActors::TScopeId PeerScopeId;