Skip to content

Commit 0b61b05

Browse files
authored
Ignore message acks from previous subsessions (ydb-platform#7683)
1 parent 61b7d6c commit 0b61b05

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

ydb/public/sdk/cpp/client/ydb_federated_topic/impl/federated_write_session.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,9 +140,13 @@ std::shared_ptr<NTopic::IWriteSession> TFederatedWriteSessionImpl::OpenSubsessio
140140
}
141141
}
142142
})
143-
.AcksHandler([selfCtx = SelfContext](NTopic::TWriteSessionEvent::TAcksEvent& ev) {
143+
.AcksHandler([selfCtx = SelfContext, generation = SubsessionGeneration](NTopic::TWriteSessionEvent::TAcksEvent& ev) {
144144
if (auto self = selfCtx->LockShared()) {
145145
with_lock(self->Lock) {
146+
if (generation != self->SubsessionGeneration) {
147+
return;
148+
}
149+
146150
Y_ABORT_UNLESS(ev.Acks.size() <= self->OriginalMessagesToGetAck.size());
147151

148152
for (size_t i = 0; i < ev.Acks.size(); ++i) {

0 commit comments

Comments
 (0)