qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robbie Gemmell (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (QPID-5190) Client consistently locks up in both producer.send and connection.close if broker fails at the right moment
Date Mon, 07 Oct 2013 12:27:42 GMT

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

Robbie Gemmell commented on QPID-5190:
--------------------------------------

Before I forget about it again...

Is the switch statement in ConnectionEndpoint a little light on break statements?

{noformat}
@@ -380,6 +380,20 @@
         if (!_closedForInput)
         {
             _closedForInput = true;
+            switch(_state)
+            {
+                case UNOPENED:
+                case AWAITING_OPEN:
+                case CLOSE_SENT:
+                    _state = ConnectionState.CLOSED;
+                case OPEN:
+                    _state = ConnectionState.CLOSE_RECEIVED;
+                case CLOSED:
+                    // already sent our close - too late to do anything more
+                    break;
+                default:
+            }
{noformat}

> Client consistently locks up in both producer.send and connection.close if broker fails
at the right moment
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: QPID-5190
>                 URL: https://issues.apache.org/jira/browse/QPID-5190
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: 0.24
>         Environment: Qpid 0.22 & 0.24, Java 1.7 x64, Ubuntu Desktop Linux 12.04 LTS
x64, Apache ActiveMQ 5.8.0
>            Reporter: Troy Collinsworth
>            Assignee: Rob Godfrey
>            Priority: Critical
>             Fix For: 0.25
>
>         Attachments: qpid-0.22-blocking3.jstack, qpid-0.22-blocking.jstack, qpid-proto.tar.gz
>
>
> If the broker is killed when the thread is between connection.createSession and session.createProducer,
the createProducer thread will block. The connection exception listener connection.close call
also blocks.
> This has been consistently observed. Example code and stack traces are attached.
> ActiveMQ is running in console mode and is being killed with Ctrl+c



--
This message was sent by Atlassian JIRA
(v6.1#6144)

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


Mime
View raw message