Uploaded image for project: 'Apache Storm'
  1. Apache Storm
  2. STORM-770

NullPointerException in consumeBatchToCursor

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 0.9.2-incubating
    • Fix Version/s: None
    • Component/s: storm-core
    • Labels:
      None

      Description

      We got the following exception after our topology had been up for ~2 days, and I was wondering if it might be related.
      Looks like "task" in "mk-transfer-fn" is null, making "(.add remote (TaskMessage. task (.serialize serializer tuple)))" fail on NPE (worker.clj:128, storm-core-0.9.2-incubating.jar)

      java.lang.RuntimeException: java.lang.NullPointerException
      at backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:128) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      at backtype.storm.utils.DisruptorQueue.consumeBatchWhenAvailable(DisruptorQueue.java:99) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      at backtype.storm.disruptor$consume_batch_when_available.invoke(disruptor.clj:80) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      at backtype.storm.disruptor$consume_loop_STAR_$fn__758.invoke(disruptor.clj:94) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      at backtype.storm.util$async_loop$fn__457.invoke(util.clj:431) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      at clojure.lang.AFn.run(AFn.java:24) [clojure-1.5.1.jar:na]
      at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72]
      Caused by: java.lang.NullPointerException: null
      at clojure.lang.RT.intCast(RT.java:1087) ~[clojure-1.5.1.jar:na]
      at backtype.storm.daemon.worker$mk_transfer_fn$fn__5748.invoke(worker.clj:128) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      at backtype.storm.daemon.executor$start_batch_transfer_GT_worker_handler_BANG$fn__5483.invoke(executor.clj:256) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      at backtype.storm.disruptor$clojure_handler$reify__745.onEvent(disruptor.clj:58) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      at backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:125) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
      ... 6 common frames omitted,java.lang.RuntimeException: java.lang.NullPointerException

      Any ideas?

      P.S.
      Also saw it here:
      http://mail-archives.apache.org/mod_mbox/storm-user/201501.mbox/%3CCABcMBhCusXXU=V1e66wfUATGYH1euQnd1SiOG65-Tp8xLWx0ww@mail.gmail.com%3E

      https://mail-archives.apache.org/mod_mbox/storm-user/201408.mbox/%3CCAJuQM_4KXHSH2_X08ujuQR76m2C+Dswp0fCiJBmfCAeyqgsFHQ@mail.gmail.com%3E

      Comment from Bobby
      http://mail-archives.apache.org/mod_mbox/storm-user/201501.mbox/%3C574363643.2791948.1420470097280.JavaMail.yahoo@jws10027.mail.ne1.yahoo.com%3E

      What version of storm are you using? Are any of the bolts shell bolts? There is a known
      issue where this can happen if two shell bolts share an executor, because they are multi-threaded.

      • Bobby

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                staslev Stas Levin
              • Votes:
                1 Vote for this issue
                Watchers:
                10 Start watching this issue

                Dates

                • Created:
                  Updated: