Browse Source

Move unacknowledged messages back to OriginalMessagesToPassDown queue (#7681)

qyryq 7 months ago
parent
commit
61b7d6c908

+ 8 - 0
ydb/public/sdk/cpp/client/ydb_federated_topic/impl/federated_write_session.cpp

@@ -175,6 +175,14 @@ std::shared_ptr<NTopic::IWriteSession> TFederatedWriteSessionImpl::OpenSubsessio
             }
         });
 
+    {
+        // Unacknowledged messages should be resent.
+        for (auto& msg : OriginalMessagesToPassDown) {
+            OriginalMessagesToGetAck.emplace_back(std::move(msg));
+        }
+        OriginalMessagesToPassDown = std::move(OriginalMessagesToGetAck);
+    }
+
     NTopic::TWriteSessionSettings wsSettings = Settings;
     wsSettings
         // .MaxMemoryUsage(Settings.MaxMemoryUsage_)  // to fix if split not by half on creation