Github user HeartSaVioR commented on the pull request:
https://github.com/apache/storm/pull/464#issuecomment-88129861
@harshach
Let me elaborate current issue.
1. UI process is fine. UI can communicate with Nimbus.
2. Please see full stack trace. Exception occurred from
storm.starter.WordCountTopology.main, which implies root cause is
```TopologySubmitter cannot connect Nimbus thrift port```. We already know UI
can communicate with Nimbus.
2015-03-30 10:10:42 b.s.u.core [INFO] topology cmd {:exit 1, :out "434
[main] INFO backtype.storm.StormSubmitter - Generated ZooKeeper secret payload
for MD5-digest: -5707587195506149327:-9132844115790108814\n439 [main] INFO
backtype.storm.security.auth.AuthUtils - Got AutoCreds []\n450 [main] INFO
backtype.storm.utils.StormBoundedExponentialBackoffRetry - The baseSleepTimeMs
[2000] the maxSleepTimeMs [60000] the maxRetries [5]\n", :err "Exception in
thread \"main\" java.lang.RuntimeException:
org.apache.thrift7.transport.TTransportException: java.net.ConnectException:
Connection refused\n\tat
backtype.storm.security.auth.TBackoffConnect.retryNext(TBackoffConnect.java:59)\n\tat
backtype.storm.security.auth.TBackoffConnect.doConnectWithRetry(TBackoffConnect.java:51)\n\tat
backtype.storm.security.auth.ThriftClient.reconnect(ThriftClient.java:103)\n\tat
backtype.storm.security.auth.ThriftClient.<init>(ThriftClient.java:72)\n\tat
backtype.storm.utils.NimbusClient.<init>(NimbusC
lient.java:62)\n\tat
backtype.storm.utils.NimbusClient.getConfiguredClientAs(NimbusClient.java:46)\n\tat
backtype.storm.StormSubmitter.submitTopologyAs(StormSubmitter.java:225)\n\tat
backtype.storm.StormSubmitter.submitTopology(StormSubmitter.java:271)\n\tat
backtype.storm.StormSubmitter.submitTopologyWithProgressBar(StormSubmitter.java:307)\n\tat
backtype.storm.StormSubmitter.submitTopologyWithProgressBar(StormSubmitter.java:288)\n\tat
storm.starter.WordCountTopology.main(WordCountTopology.java:94)\nCaused by:
org.apache.thrift7.transport.TTransportException: java.net.ConnectException:
Connection refused\n\tat
org.apache.thrift7.transport.TSocket.open(TSocket.java:187)\n\tat
org.apache.thrift7.transport.TFramedTransport.open(TFramedTransport.java:81)\n\tat
backtype.storm.security.auth.SimpleTransportPlugin.connect(SimpleTransportPlugin.java:102)\n\tat
backtype.storm.security.auth.TBackoffConnect.doConnectWithRetry(TBackoffConnect.java:48)\n\t...
9 more\nCaused by: java.net.ConnectE
xception: Connection refused\n\tat
java.net.PlainSocketImpl.socketConnect(Native Method)\n\tat
java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)\n\tat
java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)\n\tat
java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)\n\tat
java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)\n\tat
java.net.Socket.connect(Socket.java:579)\n\tat
org.apache.thrift7.transport.TSocket.open(TSocket.java:182)\n\t... 12 more\n"}
3. Adding ```(log-message (str storm-libs ":" tplg-jar-file))``` before
```(log-message "topology cmd " tplg-cmd-response)``` helps debugging what
classpath is applied with TopologySubmitter. Without my patch it just prints
out
```/opt/apache-storm-0.10.0-SNAPSHOT/lib/*:/tmp/storm-starter-topologies-0.10.0-SNAPSHOT.jar```,
which is not same as ```storm jar```.
4. Seems like TopologySubmitter cannot see storm.conf during
uploadTopology. It's another way to reproduce.
I'll try to make docker image, but I'm having hard time to reflect new
binary dist to docker image, so I manually connect UI container by ssh and
replace storm-core jar file to continue.
My patched storm-core is
https://www.dropbox.com/s/r7jb0w5uai5azjr/storm-core-0.10.0-SNAPSHOT.jar?dl=0
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---