You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by "Asanka Abeysinghe (JIRA)" <ji...@apache.org> on 2008/06/29 08:11:45 UTC

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

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


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


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

Posted by "Hiranya Jayathilaka (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment: exec.log

I'm afraid I cannot reproduce this scenario. I tried connecting the sample QFJ applications via Synapse (similar to sample 257) and tried sending some messages and restarting Synapse. Synapse resumed the session with the acceptor without any issues. See the attached log from the acceptor for more details. I have made some comments in-line too.

Could you please provide some more information regarding this.

> 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
>
>
> 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


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

Posted by "Hiranya Jayathilaka (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hiranya Jayathilaka reassigned SYNAPSE-381:
-------------------------------------------

    Assignee: Hiranya Jayathilaka

> 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
>            Assignee: Hiranya Jayathilaka
>         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


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

Posted by "Hiranya Jayathilaka (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hiranya Jayathilaka resolved SYNAPSE-381.
-----------------------------------------

       Resolution: Invalid
    Fix Version/s: NIGHTLY

As mentioned in my previous comments, Synapse can handle the sequence mismatch situations gracefully. The way such conditions are handled right now is correct and conforms to the FIX specifications. The problem is entirely taken care of at the Quickfix/J level.

> 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
>            Assignee: Hiranya Jayathilaka
>             Fix For: NIGHTLY
>
>         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


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

Posted by "Hiranya Jayathilaka (JIRA)" <ji...@apache.org>.
     [ 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


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

Posted by "Asanka Abeysinghe (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SYNAPSE-381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12609157#action_12609157 ] 

Asanka Abeysinghe commented on SYNAPSE-381:
-------------------------------------------

Did you try to clear the FIX log file of Synapse QF engine to reset the 
seq numbers.  This happens with the seq numbers mismatch.




> 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
>
>
> 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