Skip to content

Stop sending resend-messages when the responder has gone away #646

@philipwhiuk

Description

@philipwhiuk

We should probably stop resending messages when the responder has disconnected.

The current behavior is to keep sending messages regardless, ignoring the return value of send().

Here's an anonymised log example.

event INFO 20230502-18:15:40.420 - FIXT.1.1:A->B: Resending message: 3
outgoing INFO 20230502-18:15:40.420 - FIXT.1.1:A->B: <MESSAGE>
event INFO 20230502-18:15:40.420 - FIXT.1.1:A->B: Resending message: 4
outgoing INFO 20230502-18:15:40.420 - FIXT.1.1:A->B: <MESSAGE>
event INFO 20230502-18:15:40.420 - FIXT.1.1:A->B: Resending message: 5
outgoing INFO 20230502-18:15:40.420 - FIXT.1.1:A->B: <MESSAGE>
errorEvent ERROR 20230502-18:15:40.522 - FIXT.1.1:A->B: Disconnecting: Socket exception (/<IP>:<PORT>): java.io.IOException: Connection reset by peer
event INFO 20230502-18:15:40.522 - FIXT.1.1:A->B: Resending message: 6
event INFO 20230502-18:15:40.522 - FIXT.1.1:A->B: No responder, not sending message: <MESSAGE>
event INFO 20230502-18:15:40.741 - FIXT.1.1:A->B: Resending message: 7
event INFO 20230502-18:15:40.741 - FIXT.1.1:A->B: No responder, not sending message: <MESSAGE>
...
event INFO 20230502-18:15:44.741 - FIXT.1.1:A->B: Resending message: 1000
event INFO 20230502-18:15:44.741 - FIXT.1.1:A->B: No responder, not sending message: <MESSAGE>

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions