[ 
https://issues.apache.org/jira/browse/STORM-3166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated STORM-3166:
----------------------------------
    Labels: pull-request-available  (was: )

> Utils.threadDump does not account for dead threads
> --------------------------------------------------
>
>                 Key: STORM-3166
>                 URL: https://issues.apache.org/jira/browse/STORM-3166
>             Project: Apache Storm
>          Issue Type: Bug
>          Components: storm-core
>    Affects Versions: 2.0.0
>            Reporter: Stig Rohde Døssing
>            Assignee: Stig Rohde Døssing
>            Priority: Minor
>              Labels: pull-request-available
>
> Saw this test failure
> {code}
> classname: integration.org.apache.storm.integration-test / testname: 
> test-validate-topology-structure
> Uncaught exception, not in assertion.
> expected: nil
>   actual: java.lang.NullPointerException: null
>  at org.apache.storm.utils.Utils.threadDump (Utils.java:1191)
>     org.apache.storm.Testing.whileTimeout (Testing.java:107)
>     org.apache.storm.Testing.completeTopology (Testing.java:437)
>     
> integration.org.apache.storm.integration_test$try_complete_wc_topology.invoke 
> (integration_test.clj:247)
>     integration.org.apache.storm.integration_test/fn 
> (integration_test.clj:259)
>     clojure.test$test_var$fn__7670.invoke (test.clj:704)
>     clojure.test$test_var.invoke (test.clj:704)
>     clojure.test$test_vars$fn__7692$fn__7697.invoke (test.clj:722)
>     clojure.test$default_fixture.invoke (test.clj:674)
>     clojure.test$test_vars$fn__7692.invoke (test.clj:722)
>     clojure.test$default_fixture.invoke (test.clj:674)
>     clojure.test$test_vars.invoke (test.clj:718)
>     clojure.test$test_all_vars.invoke (test.clj:728)
>     clojure.test$test_ns.invoke (test.clj:747)
>     clojure.core$map$fn__4553.invoke (core.clj:2624)
>     clojure.lang.LazySeq.sval (LazySeq.java:40)
>     clojure.lang.LazySeq.seq (LazySeq.java:49)
>     clojure.lang.Cons.next (Cons.java:39)
>     clojure.lang.RT.boundedLength (RT.java:1735)
>     clojure.lang.RestFn.applyTo (RestFn.java:130)
>     clojure.core$apply.invoke (core.clj:632)
>     clojure.test$run_tests.doInvoke (test.clj:762)
>     clojure.lang.RestFn.invoke (RestFn.java:408)
>     
> org.apache.storm.testrunner$eval5125$iter__5126__5130$fn__5131$fn__5132$fn__5133.invoke
>  (test_runner.clj:107)
>     
> org.apache.storm.testrunner$eval5125$iter__5126__5130$fn__5131$fn__5132.invoke
>  (test_runner.clj:53)
>     org.apache.storm.testrunner$eval5125$iter__5126__5130$fn__5131.invoke 
> (test_runner.clj:52)
>     clojure.lang.LazySeq.sval (LazySeq.java:40)
>     clojure.lang.LazySeq.seq (LazySeq.java:49)
>     clojure.lang.RT.seq (RT.java:507)
>     clojure.core/seq (core.clj:137)
>     clojure.core$dorun.invoke (core.clj:3009)
>     org.apache.storm.testrunner$eval5125.invoke (test_runner.clj:52)
>     clojure.lang.Compiler.eval (Compiler.java:6782)
>     clojure.lang.Compiler.load (Compiler.java:7227)
>     clojure.lang.Compiler.loadFile (Compiler.java:7165)
>     clojure.main$load_script.invoke (main.clj:275)
>     clojure.main$script_opt.invoke (main.clj:337)
>     clojure.main$main.doInvoke (main.clj:421)
>     clojure.lang.RestFn.invoke (RestFn.java:421)
>     clojure.lang.Var.invoke (Var.java:383)
>     clojure.lang.AFn.applyToHelper (AFn.java:156)
>     clojure.lang.Var.applyTo (Var.java:700)
>     clojure.main.main (main.java:37)
> {code}
> Utils.threadDump needs to check whether ThreadInfo objects are null before 
> trying to dereference them, since the ThreadMxBean.getThreadInfo method will 
> return null for threads that are dead.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to