feat: integrate analytics and fragment receipt improvements
This commit is contained in:
@@ -130,10 +130,9 @@ func rememberDownstream(session downstreamSession) {
|
||||
session.touchPresence("connected", true, false)
|
||||
downstreamRegistry.Lock()
|
||||
if existing := downstreamRegistry.byMessageID[session.messageID]; existing != nil && existing.conn == session.conn {
|
||||
// A downstream long message returns one SUBMIT_RESP per fragment but is
|
||||
// persisted as one platform message. Keep the first fragment Msg_Id so
|
||||
// online delivery and restart recovery (which persists the first
|
||||
// Sequence_Id) address the same client-side message.
|
||||
// Keep a stable message-level lookup for the live connection. Receipt
|
||||
// delivery no longer uses this value for long-message fragments; it
|
||||
// reconstructs every fragment Msg_Id from that fragment's Sequence_Id.
|
||||
session.gatewayMsgID = existing.gatewayMsgID
|
||||
}
|
||||
downstreamRegistry.byMessageID[session.messageID] = &session
|
||||
|
||||
Reference in New Issue
Block a user