You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Jason Dillaman (JIRA)" <ji...@apache.org> on 2011/07/25 18:18:09 UTC

[jira] [Commented] (QPID-3264) Channel exception: session-busy: Session already attached

    [ https://issues.apache.org/jira/browse/QPID-3264?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070582#comment-13070582 ] 

Jason Dillaman commented on QPID-3264:
--------------------------------------

We have run into this issue as well in our testing environment.  Setting the QPID heartbeat to a short interval helps, but it doesn't solve it 100% of the time.  As an alternative suggestion, what if the broker sends a sync to the original session whenever a new session attempts to attach to the same name?  If the original session doesn't respond within a timeout, the original session is declared lost and the broker can respond to the new session attach request successfully.  If the original session does respond within the timeout, the broker can respond w/ the session attach error.  

> Channel exception: session-busy: Session already attached
> ---------------------------------------------------------
>
>                 Key: QPID-3264
>                 URL: https://issues.apache.org/jira/browse/QPID-3264
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker, C++ Client
>    Affects Versions: 0.8
>         Environment: Broker on RedHat 5.6 64bit; Client on Windows 7.
>            Reporter: Barys Ilyushonak
>
> While client reconnect we got:
> 2011-05-11 16:15:07 error Channel exception: session-busy: Session already attached: .a7235961-c1f9-4a76-923c-ff06b09ad0c5 (qpid/broker/SessionManager.cpp:55)
> To reproduce:
> Start linux broker on default port 5672. Create durable queue and exchange.
> Start the broker. Start client. Client sent the first message. We sow this message on the broker. After that enable IPTABLES to reject the port. Client still sent messages, but there was no new messages on the broker. After that disable IPTABLES to reject the port.
> It is important do not restart the client.
> After that we have got the error in the broker log.
> On the client:
> std::auto_ptr<qpid::messaging::Connection> m_connection
> m_connection.reset(new Connection(m_url));
> m_connection->setOption("reconnect", true);
> We limit network access on the broker machine. To close the port we use:
> iptables -A INPUT -p tcp -s 10.30.24.181 --dport 5672 -j REJECT
> where 10.30.24.181 - windows client IP
> to enable access we use:
> iptables -D INPUT -p tcp -s 10.30.24.181 --dport 5672 -j REJECT

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org