You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by "Hiranya Jayathilaka (JIRA)" <ji...@apache.org> on 2008/07/02 07:28:45 UTC

[jira] Updated: (SYNAPSE-381) FIX session with the Acceptor endpoint failes when restarts the Synapse instance

     [ https://issues.apache.org/jira/browse/SYNAPSE-381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hiranya Jayathilaka updated SYNAPSE-381:
----------------------------------------

    Attachment: syn-to-exec

I still don't see any issue. I tried restarting Synapse after clearing the message store. Then the next message Synapse sends to the acceptor will contain the seq number 1 (ie the sequence has reset). But the acceptor expects a message with a higher seq number. The FIX spec clearly mentions how to handle this kind of situations:

"If the incoming message has a sequence number less than expected and the PossDup
flag is not set it indicates a serious error and it is strongly recommended that the session be
terminated and manual intervention be initiated."

This is exactly what the acceptor does by immediately disconnecting the session. But Synapse initiator will keep on trying to connect to the session by increasing the seq number at each attempt. If you wait enough you will see that Synapse will finally manage to connect to the session.

See the attached log file from the acceptor for more details. See the inline comments too



> FIX session with the Acceptor endpoint failes when restarts the Synapse instance
> --------------------------------------------------------------------------------
>
>                 Key: SYNAPSE-381
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-381
>             Project: Synapse
>          Issue Type: Bug
>          Components: Transports
>    Affects Versions: 1.2
>         Environment: Java 1.5 on Ubuntu- Gutsy , Quickfix/j 1.3.1
>            Reporter: Asanka Abeysinghe
>         Attachments: exec.log, syn-to-exec
>
>
> When synapse instance restart while acceptor endpoint running, the FIX session doesn't reconnect. In this situation the sequance numbers of both endpoints had a mismatch, so the FIX engine running in Synapse need to re-set the sequence by sending a seq number reset (35=4), But synapse try to create a new session with the same session info while previously created session trying to reconnect.    

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Re: [jira] Updated: (SYNAPSE-381) FIX session with the Acceptor endpoint failes when restarts the Synapse instance

Posted by Asanka Abeysinghe <as...@wso2.com>.
The QFJ engine associate with the acceptor handle the recovery scenario 
you mentioned not the Synapse initiator.  This is correct and that is 
the correct way FIX should recover by resetting the seq numbers of both 
endpoints. In the specific case that I saw while the started QFJ engine 
trying to reset the seq number and reconnect, Synapse initiator did 
start another instance of QFJ engine and try to establish a new session.
I will try to recreate the issue and send the exact sequence of events.


Hiranya Jayathilaka (JIRA) wrote:
>      [ https://issues.apache.org/jira/browse/SYNAPSE-381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
>
> Hiranya Jayathilaka updated SYNAPSE-381:
> ----------------------------------------
>
>     Attachment: syn-to-exec
>
> I still don't see any issue. I tried restarting Synapse after clearing the message store. Then the next message Synapse sends to the acceptor will contain the seq number 1 (ie the sequence has reset). But the acceptor expects a message with a higher seq number. The FIX spec clearly mentions how to handle this kind of situations:
>
> "If the incoming message has a sequence number less than expected and the PossDup
> flag is not set it indicates a serious error and it is strongly recommended that the session be
> terminated and manual intervention be initiated."
>
> This is exactly what the acceptor does by immediately disconnecting the session. But Synapse initiator will keep on trying to connect to the session by increasing the seq number at each attempt. If you wait enough you will see that Synapse will finally manage to connect to the session.
>
> See the attached log file from the acceptor for more details. See the inline comments to
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org