[QFJ-258] MINA acceptor unbind closes sockets before logout Created: 17/Oct/07  Updated: 15/Jan/08  Resolved: 12/Jan/08

Status: Closed
Project: QuickFIX/J
Component/s: Engine
Affects Version/s: 1.3.0
Fix Version/s: 1.3.1

Type: Bug Priority: Major
Reporter: Mike Gu Assignee: Unassigned
Resolution: Fixed Votes: 0
Labels: None
Environment:

Wndows XP, Eclipse 3.2.1, Jdk1.5



 Description   

SocketAcceptor ,ThreadSocketAcceptor stop mechanism can't work.

In the version 1.2.1, in the sample, after the banzai and the executor have run, I press <enter> in the executor console. It turns out only one session has been disconnected in my computer and other four sessions still run.
In the version 1.3.0, in the sample, after the banzai and the executor have run, I press <enter> in the executor console. It turns out all five sessions have been disconnected(not logout). In my opinion, after we call SocketAcceptor \ ThreadSocketAcceptor stop method, what we really want to do is to initiate the logout procedure, not initiate the discnonnect procedure. Am I right?

Thanks
Mike Gu



 Comments   
Comment by Mike Gu [ 17/Oct/07 ]

I have confirmed that the reaseon that version 1.2.1 acts differently to version 1.3.0 is they using different versions of mina jar.

Comment by Mike Gu [ 17/Oct/07 ]

I have found the bug reason. In the SocketAcceptor\ThreadSocketAcceptor stop() mehod, it firstly call the stopAcceptingConnections(). And in the stopAcceptingConnections() method, there is an operation: ioAcceptor.unbind(acceptorSocketAddress); It will unbind and also close the io connnection.

Generated at Wed May 15 16:30:39 UTC 2024 using JIRA 7.5.2#75007-sha1:9f5725bb824792b3230a5d8716f0c13e296a3cae.