[
https://issues.apache.org/jira/browse/STORM-603?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14257682#comment-14257682
]
ASF GitHub Bot commented on STORM-603:
--------------------------------------
GitHub user curtisallen opened a pull request:
https://github.com/apache/storm/pull/361
STORM-603 Log errors when required kafka params are missing
https://issues.apache.org/jira/browse/STORM-603
I was upgrading our topologies to storm-0.9.3 this
[commit](https://github.com/apache/storm/commit/2596e335f27a57784a93a57823bd93dde587909f)
introduced a change that threw me for a loop. When submitting my topology I
got the following error.
```
[main] ERROR storm.kafka.DynamicBrokersReader - Couldn't connect to
zookeeper
java.lang.IllegalArgumentException: Don't know how to convert null to int
at backtype.storm.utils.Utils.getInt(Utils.java:301)
~[storm-core-0.9.3.jar:0.9.3]
at
storm.kafka.DynamicBrokersReader.<init>(DynamicBrokersReader.java:47)
~[gambit-storm-threads-0.0.1-SNAPSHOT-jar-with-dependencies.jar:na]
at
com.pearson.gambit.threads.storm.ThreadsTopology.main(ThreadsTopology.java:45)
[gambit-storm-threads-0.0.1-SNAPSHOT-jar-with-dependencies.jar:na]
Exception in thread "main" java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.NullPointerException
at
storm.kafka.DynamicBrokersReader.getBrokerInfo(DynamicBrokersReader.java:81)
at
com.pearson.gambit.threads.storm.ThreadsTopology.main(ThreadsTopology.java:48)
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
at
storm.kafka.DynamicBrokersReader.getNumPartitions(DynamicBrokersReader.java:94)
at
storm.kafka.DynamicBrokersReader.getBrokerInfo(DynamicBrokersReader.java:65)
... 1 more
Caused by: java.lang.NullPointerException
at
storm.kafka.DynamicBrokersReader.getNumPartitions(DynamicBrokersReader.java:91)
... 2 more
```
It took me a while to figure out that this error stems from missing the
`backtype.storm.Config.STORM_ZOOKEEPER_CONNECTION_TIMEOUT` property in the
`conf` map provided to the `storm.kafka.DynamicBrokersReader` constructer. It
would be nice to check the required configuration parameters and throw a
RuntimeException if any are missing.
This pull requests adds logging when required errors are missing.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/curtisallen/storm STORM-603
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/storm/pull/361.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #361
----
commit 326cc1c796d073c768de4b5aced1669bd47c6891
Author: Curtis Allen <[email protected]>
Date: 2014-12-23T23:13:31Z
Log errors when required kafka params are missing
----
> storm-kafka: Log errors when missing required configuration fields
> ------------------------------------------------------------------
>
> Key: STORM-603
> URL: https://issues.apache.org/jira/browse/STORM-603
> Project: Apache Storm
> Issue Type: Bug
> Reporter: Curtis Allen
> Assignee: Curtis Allen
>
> I was upgrading our topologies to storm-0.9.3 this
> [commit|https://github.com/apache/storm/commit/2596e335f27a57784a93a57823bd93dde587909f]
> introduced a change that threw me for a loop. When submitting my topology I
> got the following error.
> {code}
> [main] ERROR storm.kafka.DynamicBrokersReader - Couldn't connect to zookeeper
> java.lang.IllegalArgumentException: Don't know how to convert null to int
> at backtype.storm.utils.Utils.getInt(Utils.java:301)
> ~[storm-core-0.9.3.jar:0.9.3]
> at
> storm.kafka.DynamicBrokersReader.<init>(DynamicBrokersReader.java:47)
> ~[gambit-storm-threads-0.0.1-SNAPSHOT-jar-with-dependencies.jar:na]
> at
> com.pearson.gambit.threads.storm.ThreadsTopology.main(ThreadsTopology.java:45)
> [gambit-storm-threads-0.0.1-SNAPSHOT-jar-with-dependencies.jar:na]
> Exception in thread "main" java.lang.RuntimeException:
> java.lang.RuntimeException: java.lang.NullPointerException
> at
> storm.kafka.DynamicBrokersReader.getBrokerInfo(DynamicBrokersReader.java:81)
> at
> com.pearson.gambit.threads.storm.ThreadsTopology.main(ThreadsTopology.java:48)
> Caused by: java.lang.RuntimeException: java.lang.NullPointerException
> at
> storm.kafka.DynamicBrokersReader.getNumPartitions(DynamicBrokersReader.java:94)
> at
> storm.kafka.DynamicBrokersReader.getBrokerInfo(DynamicBrokersReader.java:65)
> ... 1 more
> Caused by: java.lang.NullPointerException
> at
> storm.kafka.DynamicBrokersReader.getNumPartitions(DynamicBrokersReader.java:91)
> ... 2 more
> {code}
> It took me a while to figure out that this error stems from missing the
> {code}backtype.storm.Config.STORM_ZOOKEEPER_CONNECTION_TIMEOUT{code} property
> in the conf map provided to the {code}storm.kafka.DynamicBrokersReader{code}
> constructer. It would be nice to check the required configuration parameters
> and throw a RuntimeException if any are missing.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)