[jboss-jira] [JBoss JIRA] (JGRP-1567) RetransmitTask throws NPE

RH Bugzilla Integration (JIRA) jira-events at lists.jboss.org
Wed Jan 23 09:39:48 EST 2013


    [ https://issues.jboss.org/browse/JGRP-1567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12749918#comment-12749918 ] 

RH Bugzilla Integration commented on JGRP-1567:
-----------------------------------------------

Radim Vansa <rvansa at redhat.com> made a comment on [bug 903234|https://bugzilla.redhat.com/show_bug.cgi?id=903234]

RetransmitTask throws NPE, producing erros in log.
May lead to incorrect UNICAST2 protocol operation.
See details in JIRA
                
> RetransmitTask throws NPE
> -------------------------
>
>                 Key: JGRP-1567
>                 URL: https://issues.jboss.org/browse/JGRP-1567
>             Project: JGroups
>          Issue Type: Bug
>    Affects Versions: 3.2.6
>            Reporter: Radim Vansa
>            Assignee: Bela Ban
>             Fix For: 3.2.7, 3.3
>
>
> After the UNICAST2.STABLE message is received, {{sent_msgs.purge()}} is called for the sender's entry and Table's {{low == hd == hr}}. Then the {{SenderEntry.getFirstMessage()}} returns null and that causes the NPE below.
> There is another race condition when this may happen: When the message is sent down the stack for a new destination a {{SenderEntry}} is inserted into {{send_table}}. This entry, however, contains no messages yet, and, therefore, as the RetransmitTask in {{triggerXmit}} retrieves the first message, it gets null and throws NPE.
> {code}
> 08:19:05,716 ERROR [org.jgroups.util.TimeScheduler2] (Timer-2,edg-perf09-2672) failed running task UNICAST2: RetransmitTask (interval=500 ms)
> java.lang.NullPointerException
> 	at org.jgroups.protocols.UNICAST2.triggerXmit(UNICAST2.java:1326)
> 	at org.jgroups.protocols.UNICAST2$RetransmitTask.run(UNICAST2.java:1294)
> 	at org.jgroups.util.TimeScheduler2$RecurringTask.run(TimeScheduler2.java:591)
> 	at org.jgroups.util.TimeScheduler2$MyTask.run(TimeScheduler2.java:523)
> 	at org.jgroups.util.TimeScheduler2$Entry.execute(TimeScheduler2.java:428)
> 	at org.jgroups.util.TimeScheduler2$1.run(TimeScheduler2.java:286)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:662)
> {code}
> Theoretically there is another race condition in the {{SenderEntry.getFirstMessage()}} itself - the low value may change between the {{getLow}} and {{get}} calls, but I am not sure when this may happen.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jboss-jira mailing list