[jboss-jira] [JBoss JIRA] Commented: (JGRP-302) Deadlock with TCP and loopback=true

Bela Ban (JIRA) jira-events at jboss.com
Sat Sep 9 04:21:29 EDT 2006


    [ http://jira.jboss.com/jira/browse/JGRP-302?page=comments#action_12343099 ] 
            
Bela Ban commented on JGRP-302:
-------------------------------

SOLUTION: pass down ARE-YOU-ALIVE messages in VERIFY_SUSPECT.verifySuspect() outside the scope of the synchronized(suspects) statement

> Deadlock with TCP and loopback=true
> -----------------------------------
>
>                 Key: JGRP-302
>                 URL: http://jira.jboss.com/jira/browse/JGRP-302
>             Project: JGroups
>          Issue Type: Bug
>    Affects Versions: 2.3 SP1
>            Reporter: Bela Ban
>         Assigned To: Bela Ban
>             Fix For: 2.4
>
>
> "TimeScheduler.Thread":
>         at org.jgroups.protocols.VERIFY_SUSPECT.verifySuspect(VERIFY_SUSPECT.java:227)
>         - waiting to lock <0x1056b9d0> (a java.util.Hashtable)
>         at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:131)
>         at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:488)
>         at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
>         at org.jgroups.protocols.FD.up(FD.java:274)
>         at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:488)
>         at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
>         at org.jgroups.protocols.MERGE2.up(MERGE2.java:163)
>         at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:488)
>         at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
>         at org.jgroups.protocols.Discovery.up(Discovery.java:275)
>         at org.jgroups.protocols.MPING.up(MPING.java:152)
>         at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:488)
>         at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
>         at org.jgroups.protocols.BasicTCP.sendToSingleMember(BasicTCP.java:67)
>         at org.jgroups.protocols.BasicTCP.sendToAllMembers(BasicTCP.java:41)
>         at org.jgroups.protocols.TP.doSend(TP.java:934)
>         at org.jgroups.protocols.TP.send(TP.java:923)
>         - locked <0x1055e088> (a org.jgroups.util.ExposedByteArrayOutputStream)
>         at org.jgroups.protocols.TP.down(TP.java:712)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.Discovery.down(Discovery.java:333)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.MERGE2.down(MERGE2.java:208)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.FD$BroadcastTask.run(FD.java:671)
>         at org.jgroups.protocols.FD$Broadcaster.startBroadcastTask(FD.java:563)
>         - locked <0x1056bf90> (a java.lang.Object)
>         at org.jgroups.protocols.FD$Broadcaster.addSuspectedMember(FD.java:590)
>         - locked <0x1056bf78> (a java.util.Vector)
>         at org.jgroups.protocols.FD$Monitor.run(FD.java:515)
>         at org.jgroups.util.TimeScheduler._run(TimeScheduler.java:397)
>         at org.jgroups.util.TimeScheduler.access$000(TimeScheduler.java:44)
>         at org.jgroups.util.TimeScheduler$Loop.run(TimeScheduler.java:141)
> "IncomingMessageHandler (channel=DrawGroupDemo)":
>         at org.jgroups.protocols.TP.send(TP.java:922)
>         - waiting to lock <0x1055e088> (a org.jgroups.util.ExposedByteArrayOutputStream)
>         at org.jgroups.protocols.TP.down(TP.java:712)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.Discovery.down(Discovery.java:333)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.MERGE2.down(MERGE2.java:208)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.FD.down(FD.java:313)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.VERIFY_SUSPECT.verifySuspect(VERIFY_SUSPECT.java:234)
>         - locked <0x1056b9d0> (a java.util.Hashtable)
>         at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:131)
>         at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:488)
>         at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
>         at org.jgroups.protocols.FD.up(FD.java:259)
>         at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:488)
>         at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
>         at org.jgroups.protocols.MERGE2.up(MERGE2.java:163)
>         at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:488)
>         at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
>         at org.jgroups.protocols.Discovery.up(Discovery.java:225)
>         at org.jgroups.protocols.MPING.up(MPING.java:152)
>         at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:488)
>         at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
>         at org.jgroups.protocols.TP.handleIncomingMessage(TP.java:905)
>         at org.jgroups.protocols.TP.access$700(TP.java:45)
>         at org.jgroups.protocols.TP$IncomingMessageHandler.run(TP.java:1329)
>         at java.lang.Thread.run(Thread.java:534)
> Found 1 deadlock.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list