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

Onur Karaman edited comment on KAFKA-1989 at 5/27/15 5:59 PM:
--------------------------------------------------------------

Hi [~yasuhiro.matsuda].

A NullPointerException sometimes shows up in TimerTaskList.remove while running 
TestPurgatoryPerformance. I’m on the HEAD of trunk.
{code}
> ./bin/kafka-run-class.sh kafka.TestPurgatoryPerformance --key-space-size 
> 100000 --keys 3 --num 100000 --pct50 50 --pct75 75 --rate 1000 --size 50 
> --timeout 20
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in 
[jar:file:/Users/okaraman/code/kafka/core/build/dependant-libs-2.10.5/slf4j-log4j12-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in 
[jar:file:/Users/okaraman/code/kafka/core/build/dependant-libs-2.10.5/slf4j-log4j12-1.7.6.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
[2015-05-27 10:02:14,782] ERROR [completion thread], Error due to  
(kafka.TestPurgatoryPerformance$CompletionQueue$$anon$1)
java.lang.NullPointerException
  at kafka.utils.timer.TimerTaskList.remove(TimerTaskList.scala:80)
  at kafka.utils.timer.TimerTaskEntry.remove(TimerTaskList.scala:128)
  at kafka.utils.timer.TimerTask$class.cancel(TimerTask.scala:27)
  at kafka.server.DelayedOperation.cancel(DelayedOperation.scala:50)
  at kafka.server.DelayedOperation.forceComplete(DelayedOperation.scala:71)
  at 
kafka.TestPurgatoryPerformance$CompletionQueue$$anon$1.doWork(TestPurgatoryPerformance.scala:263)
  at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:60)
{code}


was (Author: onurkaraman):
Hi Yasuhiro.

A NullPointerException sometimes shows up in TimerTaskList.remove while running 
TestPurgatoryPerformance. I’m on the HEAD of trunk.
{code}
> ./bin/kafka-run-class.sh kafka.TestPurgatoryPerformance --key-space-size 
> 100000 --keys 3 --num 100000 --pct50 50 --pct75 75 --rate 1000 --size 50 
> --timeout 20
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in 
[jar:file:/Users/okaraman/code/kafka/core/build/dependant-libs-2.10.5/slf4j-log4j12-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in 
[jar:file:/Users/okaraman/code/kafka/core/build/dependant-libs-2.10.5/slf4j-log4j12-1.7.6.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
[2015-05-27 10:02:14,782] ERROR [completion thread], Error due to  
(kafka.TestPurgatoryPerformance$CompletionQueue$$anon$1)
java.lang.NullPointerException
  at kafka.utils.timer.TimerTaskList.remove(TimerTaskList.scala:80)
  at kafka.utils.timer.TimerTaskEntry.remove(TimerTaskList.scala:128)
  at kafka.utils.timer.TimerTask$class.cancel(TimerTask.scala:27)
  at kafka.server.DelayedOperation.cancel(DelayedOperation.scala:50)
  at kafka.server.DelayedOperation.forceComplete(DelayedOperation.scala:71)
  at 
kafka.TestPurgatoryPerformance$CompletionQueue$$anon$1.doWork(TestPurgatoryPerformance.scala:263)
  at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:60)
{code}

> New purgatory design
> --------------------
>
>                 Key: KAFKA-1989
>                 URL: https://issues.apache.org/jira/browse/KAFKA-1989
>             Project: Kafka
>          Issue Type: Improvement
>          Components: purgatory
>    Affects Versions: 0.8.2.0
>            Reporter: Yasuhiro Matsuda
>            Assignee: Yasuhiro Matsuda
>            Priority: Critical
>             Fix For: 0.8.3
>
>         Attachments: KAFKA-1989.patch, KAFKA-1989_2015-03-20_08:44:57.patch, 
> KAFKA-1989_2015-04-01_13:49:58.patch, KAFKA-1989_2015-04-07_14:59:33.patch, 
> KAFKA-1989_2015-04-08_13:27:59.patch, KAFKA-1989_2015-04-08_14:29:51.patch
>
>
> This is a new design of purgatory based on Hierarchical Timing Wheels.
> https://cwiki.apache.org/confluence/display/KAFKA/Purgatory+Redesign+Proposal



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to