You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "LIU (Commented) (JIRA)" <ji...@apache.org> on 2012/01/09 09:22:39 UTC
[jira] [Commented] (QPID-3369) Loss of cluster elder can result in
loss of whole cluster
[ https://issues.apache.org/jira/browse/QPID-3369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13182411#comment-13182411 ]
LIU commented on QPID-3369:
---------------------------
get here from google.
recently I encounter this error while testing c++ cluster,reproduce by this:
1. build a cluster with 2 brokers: A and B,it's working
2. a client connects to broker A both producing&consuming messages all the time
3. in broker B,execute the shell command: <iptables -A INPUT -s "A" -j DROP> . I want to test the network error handling in cluster,let broker B drop connections from A.
4. the client received broker update info,remove B from cluster,that's good.
5. after some seconds,may be 10,execute the command in B: <iptabes -D INPUT 1>.let broker B receives connections from A
6. wait some time, both broker A and B get this error:critical Error delivering frames:Cluster timer wakeup non-existent task ManagementAgent::periodicProcessing (qpid/cluster/ClusterTimer.cpp:111); and both brokers shut down!
I'm using qpid ver 0.10 on RHEL5.5
> Loss of cluster elder can result in loss of whole cluster
> ---------------------------------------------------------
>
> Key: QPID-3369
> URL: https://issues.apache.org/jira/browse/QPID-3369
> Project: Qpid
> Issue Type: Bug
> Components: C++ Clustering
> Affects Versions: 0.7
> Reporter: Jason Dillaman
> Assignee: Alan Conway
> Attachments: QPID-3369.patch
>
>
> If the cluster elder is lost, it is possible that the remaining nodes of the
> cluster will fail with the following errors:
> Error delivering frames: Cluster timer wakeup non-existent task
> ManagementAgent::periodicProcessing (qpid/cluster/ClusterTimer.cpp:93)
> -- or --
> Error delivering frames: Cluster timer drop non-existent task
> ManagementAgent::periodicProcessing (qpid/cluster/ClusterTimer.cpp:109)
> When a member is promoted to be the elder, the ClusterTimer::becomeElder()
> method will add all the current cluster tasks to the Timer. However, there is
> a potential race condition where CPG can deliver the timer wakeup from the
> original elder.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
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