{{Quickfixn}} disconnect when trying to negotiate sequence numbers

James A. Smith jsmith at anstca.com
Thu Sep 1 11:58:35 PDT 2016


Our counter party would like clarification as to where you expect tag 43 to be added?

From: Quickfixn [mailto:quickfixn-bounces at lists.quickfixn.com] On Behalf Of Mike Gatny
Sent: Thursday, September 01, 2016 12:34 PM
To: Mailing list for QuickFIX/n
Subject: Re: {{Quickfixn}} disconnect when trying to negotiate sequence numbers

Your counterparty (redacted) is e.g. sending you a logon under seq num 2507:
2517 20160901-13:38:50.891 : 8=FIX.4.2|9=64|35=A|49=THEM|56=YOU|34=2507|52=20160901-13:38:50.520|108=60|

...then some resend ensues... and then counterparty finishes off the resend with a combined seq reset / gap fill over the previous logon, but without setting the PossDup flag (43=Y):

2548 20160901-13:38:51.094 : 8=FIX.4.2|9=66|35=4|49=THEM|56=YOU|34=2507|52=20160901-13:38:50.697|123=Y|36=2508|
2549 20160901-13:38:51.110 : 8=FIX.4.2|9=105|35=5|34=41|49=YOU|52=20160901-13:38:51.094|56=THEM|58=MsgSeqNum too low, expecting 2508 but received 2507|

I am typically slow to blame the other side, but I think that is plain wrong. I would be happy to hear their counter-argument, though I think the FIX spec is clear in this case.  It is do-able to add some config to go out of spec and workaround this (wouldn't be the first time), but of course the less of that we have to do the better.

Might be interesting to check whether the other QF impls handle this.

--
Mike Gatny
Connamara Systems, LLC

--
Mike Gatny
Connamara Systems, LLC

On Thu, Sep 1, 2016 at 11:30 AM, Grant Birchmeier <gbirchmeier at connamara.com<mailto:gbirchmeier at connamara.com>> wrote:
James, Mike is asking for your *message* log, not your event log.

You need to make sure to delete any passwords or other sensitive information from it before sending.

Because it is very large, maybe send it to Mike directly (as an attachment, not a paste) instead of on the list.

(I'm going to admin-deny your event-log email from going to the list, because it's very large and not what we need.)

-Grant

On Thu, Sep 1, 2016 at 10:04 AM, Mike Gatny <mgatny at connamara.com<mailto:mgatny at connamara.com>> wrote:
Hmm that almost looks like an off-by-one problem with the seqnums on recovery.  Which qf/n release version are you on (latest is v1.7.0)?  Can you post a sanitized messages log so we can follow along with one of those resends?

--
Mike Gatny
Connamara Systems, LLC

On Thu, Sep 1, 2016 at 10:42 AM, James A. Smith <jsmith at anstca.com<mailto:jsmith at anstca.com>> wrote:
Hi team,

I have an acceptor that is having problems negotiating sequence numbers after I bounce the server:

20160901-14:27:12.373 : Received logon
20160901-14:27:12.373 : Responding to logon request
20160901-14:27:12.373 : MsgSeqNum too high, expecting 11367 but received 11602
20160901-14:27:12.373 : Sent ResendRequest FROM: 11367 TO: 0
20160901-14:27:12.420 : ResendRequest for messages FROM: 11367 TO: 0 has been satisfied.
20160901-14:27:12.436 : Received SequenceReset FROM: 11371 TO: 11372
20160901-14:27:13.295 : Processing queued message: 11602
20160901-14:27:13.295 : Verify failed: MsgSeqNum too low, expecting 11603 but received 11602
20160901-14:27:13.295 : Session FIX.4.2:ANS->BMO disconnecting: Verify failed: MsgSeqNum too low, expecting 11603 but received 11602
20160901-14:27:13.295 : Session FIX.4.2:ANS->BMO already disconnected: Received msg type '8' when not logged on
20160901-14:27:47.933 : FIX.4.2:ANS->BMO Socket Reader 11144452 accepting session FIX.4.2:ANS->BMO from 165.185.251.141:10456<http://165.185.251.141:10456>
20160901-14:27:47.933 : FIX.4.2:ANS->BMO Acceptor heartbeat set to 60 seconds
20160901-14:27:47.933 : Received logon
20160901-14:27:47.933 : Responding to logon request
20160901-14:27:47.933 : MsgSeqNum too high, expecting 11603 but received 11855
20160901-14:27:47.933 : Sent ResendRequest FROM: 11603 TO: 0
20160901-14:27:47.964 : ResendRequest for messages FROM: 11603 TO: 0 has been satisfied.
20160901-14:27:47.979 : Received SequenceReset FROM: 11605 TO: 11606
20160901-14:27:48.870 : Processing queued message: 11855
20160901-14:27:48.870 : Verify failed: MsgSeqNum too low, expecting 11856 but received 11855
20160901-14:27:48.870 : Session FIX.4.2:ANS->BMO disconnecting: Verify failed: MsgSeqNum too low, expecting 11856 but received 11855
20160901-14:28:23.633 : FIX.4.2:ANS->BMO Socket Reader 19043604 accepting session FIX.4.2:ANS->BMO from 165.185.251.141:10457<http://165.185.251.141:10457>
20160901-14:28:23.633 : FIX.4.2:ANS->BMO Acceptor heartbeat set to 60 seconds
20160901-14:28:23.633 : Received logon
20160901-14:28:23.633 : Responding to logon request
20160901-14:28:23.633 : MsgSeqNum too high, expecting 11856 but received 12024
20160901-14:28:23.633 : Sent ResendRequest FROM: 11856 TO: 0
20160901-14:28:23.680 : ResendRequest for messages FROM: 11856 TO: 0 has been satisfied.
20160901-14:28:23.680 : Received SequenceReset FROM: 11857 TO: 11858
20160901-14:28:24.242 : Processing queued message: 12024
20160901-14:28:24.242 : Verify failed: MsgSeqNum too low, expecting 12025 but received 12024
20160901-14:28:24.242 : Session FIX.4.2:ANS->BMO disconnecting: Verify failed: MsgSeqNum too low, expecting 12025 but received 12024


Here is my config file:
# default settings for sessions
[DEFAULT]
FileStorePath=store
FileLogPath=log
ConnectionType=acceptor
ReconnectInterval=60
SenderCompID=ANS

# session definition

[SESSION]
UseDataDictionary=N
ValidateUserDefinedFields=N
BeginString=FIX.4.2
TargetCompID=BMO
UseLocalTime=Y
StartTime=04:30:00
EndTime=18:30:00
ReconnectInterval=30
HeartBtInt=30
SocketAcceptPort=9304
SocketConnectHost=165.185.251.141
DataDictionary=BMOFIX42.xml
# RequiresOrigSendingTime=N
# test CheckLatency
CheckLatency=N



_______________________________________________
Quickfixn mailing list
Quickfixn at lists.quickfixn.com<mailto:Quickfixn at lists.quickfixn.com>
http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com


_______________________________________________
Quickfixn mailing list
Quickfixn at lists.quickfixn.com<mailto:Quickfixn at lists.quickfixn.com>
http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com



--
Grant Birchmeier
Connamara Systems, LLC
Made-To-Measure Trading Solutions.
Exactly what you need. No more. No less.
http://connamara.com

_______________________________________________
Quickfixn mailing list
Quickfixn at lists.quickfixn.com<mailto:Quickfixn at lists.quickfixn.com>
http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20160901/1697340c/attachment-0002.htm>


More information about the Quickfixn mailing list