Describe the bug
Upon detecting the sequence number higher than the expected, the FIX client sends a resend request. But few vendors reject the resend requests in scenarios when those resend requests could not be fulfilled. They also provide with the starting sequence number from which we can request in the reject message. QuickFix session layer should handle this and reset the resend range that was set back to intitial state as there is no active state.
But currently resend range ia not reset, this makes Quickfix think that there is an active resend request. Hence it does not attempt to send the resend request next time a message with higher sequence number is received.
The issue that I am facing because of this:
I intent to handle reject message in fromAdmin and modify the next expected target sequence number to the starting sequence number that we got in reject message. So the next time QuickFix session layer sends the resend request, it uses current start sequence number. But with current implementation resend request is not sent at all.
To Reproduce
Send a message with sequence number higher than expected. Client will send the resend request. Send the reject message in response to the Resend Request and continue sending the messages with higher sequence numbers.
Expected behavior
Quickfix should detect that Rejeci message is in reference to the Resend request and resend range should be reset back to initial state. As resend range is private variable of session without any setters. This should be handled within Session class.
system information:
Describe the bug
Upon detecting the sequence number higher than the expected, the FIX client sends a resend request. But few vendors reject the resend requests in scenarios when those resend requests could not be fulfilled. They also provide with the starting sequence number from which we can request in the reject message. QuickFix session layer should handle this and reset the resend range that was set back to intitial state as there is no active state.
But currently resend range ia not reset, this makes Quickfix think that there is an active resend request. Hence it does not attempt to send the resend request next time a message with higher sequence number is received.
The issue that I am facing because of this:
I intent to handle reject message in fromAdmin and modify the next expected target sequence number to the starting sequence number that we got in reject message. So the next time QuickFix session layer sends the resend request, it uses current start sequence number. But with current implementation resend request is not sent at all.
To Reproduce
Send a message with sequence number higher than expected. Client will send the resend request. Send the reject message in response to the Resend Request and continue sending the messages with higher sequence numbers.
Expected behavior
Quickfix should detect that Rejeci message is in reference to the Resend request and resend range should be reset back to initial state. As resend range is private variable of session without any setters. This should be handled within Session class.
system information: