You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Rafael H. Schloming (JIRA)" <qp...@incubator.apache.org> on 2007/10/10 19:52:50 UTC

[jira] Created: (QPID-633) C++ broker deadlock on subscribe/flow/sync

C++ broker deadlock on subscribe/flow/sync
------------------------------------------

                 Key: QPID-633
                 URL: https://issues.apache.org/jira/browse/QPID-633
             Project: Qpid
          Issue Type: Bug
          Components: C++ Broker
            Reporter: Rafael H. Schloming
         Attachments: subscribe-stack.txt

I believe I've encountered a broker deadlock. The client is doing subscribe immediately followed by a flow, and then syncing. The client reports sending MessageSubscribe, MessageFlow, and ExecutionSync. The broker only reports receiving MessageSubscribe and then hangs. I've attached the stack dump from the broker.

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


[jira] Updated: (QPID-633) C++ broker deadlock on subscribe/flow/sync

Posted by "Alan Conway (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-633?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alan Conway updated QPID-633:
-----------------------------

    Assignee: Gordon Sim  (was: Alan Conway)

> C++ broker deadlock on subscribe/flow/sync
> ------------------------------------------
>
>                 Key: QPID-633
>                 URL: https://issues.apache.org/jira/browse/QPID-633
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>            Reporter: Rafael H. Schloming
>            Assignee: Gordon Sim
>         Attachments: flow-stack.txt, subscribe-stack.txt
>
>
> I believe I've encountered a broker deadlock. The client is doing subscribe immediately followed by a flow, and then syncing. The client reports sending MessageSubscribe, MessageFlow, and ExecutionSync. The broker only reports receiving MessageSubscribe and then hangs. I've attached the stack dump from the broker.

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


[jira] Commented: (QPID-633) C++ broker deadlock on subscribe/flow/sync

Posted by "Rafael H. Schloming (JIRA)" <qp...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-633?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12533818 ] 

Rafael H. Schloming commented on QPID-633:
------------------------------------------

This also seems to make the broker not respond to C-c. It prints out "Shutting down on signal 2" multiple times as I repeatedly hit C-c however it doesn't actually shut down.

> C++ broker deadlock on subscribe/flow/sync
> ------------------------------------------
>
>                 Key: QPID-633
>                 URL: https://issues.apache.org/jira/browse/QPID-633
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>            Reporter: Rafael H. Schloming
>            Assignee: Alan Conway
>         Attachments: subscribe-stack.txt
>
>
> I believe I've encountered a broker deadlock. The client is doing subscribe immediately followed by a flow, and then syncing. The client reports sending MessageSubscribe, MessageFlow, and ExecutionSync. The broker only reports receiving MessageSubscribe and then hangs. I've attached the stack dump from the broker.

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


[jira] Assigned: (QPID-633) C++ broker deadlock on subscribe/flow/sync

Posted by "Rafael H. Schloming (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-633?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rafael H. Schloming reassigned QPID-633:
----------------------------------------

    Assignee: Alan Conway

> C++ broker deadlock on subscribe/flow/sync
> ------------------------------------------
>
>                 Key: QPID-633
>                 URL: https://issues.apache.org/jira/browse/QPID-633
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>            Reporter: Rafael H. Schloming
>            Assignee: Alan Conway
>         Attachments: subscribe-stack.txt
>
>
> I believe I've encountered a broker deadlock. The client is doing subscribe immediately followed by a flow, and then syncing. The client reports sending MessageSubscribe, MessageFlow, and ExecutionSync. The broker only reports receiving MessageSubscribe and then hangs. I've attached the stack dump from the broker.

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


[jira] Updated: (QPID-633) C++ broker deadlock on subscribe/flow/sync

Posted by "Rafael H. Schloming (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-633?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rafael H. Schloming updated QPID-633:
-------------------------------------

    Attachment: subscribe-stack.txt

> C++ broker deadlock on subscribe/flow/sync
> ------------------------------------------
>
>                 Key: QPID-633
>                 URL: https://issues.apache.org/jira/browse/QPID-633
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>            Reporter: Rafael H. Schloming
>         Attachments: subscribe-stack.txt
>
>
> I believe I've encountered a broker deadlock. The client is doing subscribe immediately followed by a flow, and then syncing. The client reports sending MessageSubscribe, MessageFlow, and ExecutionSync. The broker only reports receiving MessageSubscribe and then hangs. I've attached the stack dump from the broker.

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


[jira] Updated: (QPID-633) C++ broker deadlock on subscribe/flow/sync

Posted by "Rafael H. Schloming (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-633?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rafael H. Schloming updated QPID-633:
-------------------------------------

    Attachment: flow-stack.txt

Another possibly related hang. I'm not sure of the exact sequence that caused this one.

> C++ broker deadlock on subscribe/flow/sync
> ------------------------------------------
>
>                 Key: QPID-633
>                 URL: https://issues.apache.org/jira/browse/QPID-633
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>            Reporter: Rafael H. Schloming
>            Assignee: Alan Conway
>         Attachments: flow-stack.txt, subscribe-stack.txt
>
>
> I believe I've encountered a broker deadlock. The client is doing subscribe immediately followed by a flow, and then syncing. The client reports sending MessageSubscribe, MessageFlow, and ExecutionSync. The broker only reports receiving MessageSubscribe and then hangs. I've attached the stack dump from the broker.

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


[jira] Resolved: (QPID-633) C++ broker deadlock on subscribe/flow/sync

Posted by "Gordon Sim (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-633?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gordon Sim resolved QPID-633.
-----------------------------

    Resolution: Fixed

Revised locking strategy to avoid holding locks (in Queue and SemanticState) across invocations on other components. This fixes the particular case here where the queues consumer lock and the semantic states consumer impl lock were acquired in different orders.

> C++ broker deadlock on subscribe/flow/sync
> ------------------------------------------
>
>                 Key: QPID-633
>                 URL: https://issues.apache.org/jira/browse/QPID-633
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>            Reporter: Rafael H. Schloming
>            Assignee: Gordon Sim
>         Attachments: flow-stack.txt, subscribe-stack.txt
>
>
> I believe I've encountered a broker deadlock. The client is doing subscribe immediately followed by a flow, and then syncing. The client reports sending MessageSubscribe, MessageFlow, and ExecutionSync. The broker only reports receiving MessageSubscribe and then hangs. I've attached the stack dump from the broker.

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