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

ASF GitHub Bot commented on STORM-1642:
---------------------------------------

Github user knusbaum commented on a diff in the pull request:

    https://github.com/apache/storm/pull/1316#discussion_r58954552
  
    --- Diff: storm-core/src/clj/backtype/storm/daemon/executor.clj ---
    @@ -431,13 +431,14 @@
           (fn [tuple-batch sequence-id end-of-batch?]
             (fast-list-iter [[task-id msg] tuple-batch]
               (let [^TupleImpl tuple (if (instance? Tuple msg) msg 
(.deserialize deserializer msg))]
    -            (when debug? (log-message "Processing received message FOR " 
task-id " TUPLE: " tuple))
    -            (if task-id
    -              (tuple-action-fn task-id tuple)
    -              ;; null task ids are broadcast tuples
    -              (fast-list-iter [task-id task-ids]
    +            (if tuple
    +              ((when debug? (log-message "Processing received message FOR 
" task-id " TUPLE: " tuple))
    +              (if task-id
                     (tuple-action-fn task-id tuple)
    -                ))
    +                ;; null task ids are broadcast tuples
    +                (fast-list-iter [task-id task-ids]
    +                  (tuple-action-fn task-id tuple)
    +                  ))))
    --- End diff --
    
    Lots of parenthetical and formatting problems here.


> NullPointerException when deserialize
> -------------------------------------
>
>                 Key: STORM-1642
>                 URL: https://issues.apache.org/jira/browse/STORM-1642
>             Project: Apache Storm
>          Issue Type: Bug
>          Components: storm-core
>    Affects Versions: 0.10.0
>         Environment: jdk 8
>            Reporter: Renjie Liu
>
> Hi:
> I've encountered the following NPE when storm tries to deserialize. I did not 
> use OutputCollector concurrently in my code.  The only object we are passing 
> between bolts are a thrift object, and we have written a serializer for it. 
> I've attached the code of serializer and please help to check whether there 
> are any potential bugs there.
> 2016-03-04 17:17:43.583 b.s.util [ERROR] Async loop died!
> java.lang.RuntimeException: java.lang.NullPointerException
>         at 
> backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:135)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.utils.DisruptorQueue.consumeBatchWhenAvailable(DisruptorQueue.java:106)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.disruptor$consume_batch_when_available.invoke(disruptor.clj:80)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.daemon.executor$fn__5694$fn__5707$fn__5758.invoke(executor.clj:819)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at backtype.storm.util$async_loop$fn__545.invoke(util.clj:479) 
> [storm-core-0.10.0.jar:0.10.0]
>         at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
>         at java.lang.Thread.run(Thread.java:745) [?:1.8.0_60]
> Caused by: java.lang.NullPointerException
>         at com.esotericsoftware.kryo.io.Input.setBuffer(Input.java:57) 
> ~[kryo-2.21.jar:?]
>         at 
> backtype.storm.serialization.KryoTupleDeserializer.deserialize(KryoTupleDeserializer.java:47)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.daemon.executor$mk_task_receiver$fn__5615.invoke(executor.clj:433)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.disruptor$clojure_handler$reify__5189.onEvent(disruptor.clj:58)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:132)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         ... 6 more
> 2016-03-04 17:17:43.584 b.s.d.executor [ERROR]
> java.lang.RuntimeException: java.lang.NullPointerException
>         at 
> backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:135)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.utils.DisruptorQueue.consumeBatchWhenAvailable(DisruptorQueue.java:106)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.disruptor$consume_batch_when_available.invoke(disruptor.clj:80)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.daemon.executor$fn__5694$fn__5707$fn__5758.invoke(executor.clj:819)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at backtype.storm.util$async_loop$fn__545.invoke(util.clj:479) 
> [storm-core-0.10.0.jar:0.10.0]
>         at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
>         at java.lang.Thread.run(Thread.java:745) [?:1.8.0_60]
> Caused by: java.lang.NullPointerException
>         at com.esotericsoftware.kryo.io.Input.setBuffer(Input.java:57) 
> ~[kryo-2.21.jar:?]
>         at 
> backtype.storm.serialization.KryoTupleDeserializer.deserialize(KryoTupleDeserializer.java:47)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.daemon.executor$mk_task_receiver$fn__5615.invoke(executor.clj:433)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.disruptor$clojure_handler$reify__5189.onEvent(disruptor.clj:58)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:132)
>  ~[storm-core-0.10.0.jar:0.10.0]
>         ... 6 more
> 2016-03-04 17:17:43.648 b.s.util [ERROR] Halting process: ("Worker died")
> java.lang.RuntimeException: ("Worker died")
>         at backtype.storm.util$exit_process_BANG_.doInvoke(util.clj:336) 
> [storm-core-0.10.0.jar:0.10.0]
>         at clojure.lang.RestFn.invoke(RestFn.java:423) [clojure-1.6.0.jar:?]
>         at 
> backtype.storm.daemon.worker$fn__7188$fn__7189.invoke(worker.clj:536) 
> [storm-core-0.10.0.jar:0.10.0]
>         at 
> backtype.storm.daemon.executor$mk_executor_data$fn__5523$fn__5524.invoke(executor.clj:261)
>  [storm-core-0.10.0.jar:0.10.0]
>         at backtype.storm.util$async_loop$fn__545.invoke(util.clj:489) 
> [storm-core-0.10.0.jar:0.10.0]
>         at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
>         at java.lang.Thread.run(Thread.java:745) [?:1.8.0_60]



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

Reply via email to