GitHub user NareshKosgi opened a pull request:
https://github.com/apache/storm/pull/303
STORM-456:Storm UI cannot navigate to topology page when name contains
spaces
1. The issue is due to space being replaced by "+" by the framework
2. In the routes function for core.clj I added a check for search and
replace for "+" for the id being passed
3. I tested by changing the word count example and is working as I can
click on the "word count" topology and get to the next page but the next page
errors out with the following exception:
NotAliveException(msg:word+count-1-1414427540)
at
backtype.storm.generated.Nimbus$getTopologyInfo_result.read(Nimbus.java:11347)
at org.apache.thrift7.TServiceClient.receiveBase(TServiceClient.java:78)
at
backtype.storm.generated.Nimbus$Client.recv_getTopologyInfo(Nimbus.java:491)
at
backtype.storm.generated.Nimbus$Client.getTopologyInfo(Nimbus.java:478)
at backtype.storm.ui.core$topology_page.invoke(core.clj:628)
at backtype.storm.ui.core$fn__8177.invoke(core.clj:853)
at compojure.core$make_route$fn__6356.invoke(core.clj:93)
at compojure.core$if_route$fn__6344.invoke(core.clj:39)
at compojure.core$if_method$fn__6337.invoke(core.clj:24)
at compojure.core$routing$fn__6362.invoke(core.clj:106)
at clojure.core$some.invoke(core.clj:2443)
at compojure.core$routing.doInvoke(core.clj:106)
at clojure.lang.RestFn.applyTo(RestFn.java:139)
at clojure.core$apply.invoke(core.clj:619)
at compojure.core$routes$fn__6366.invoke(core.clj:111)
at ring.middleware.reload$wrap_reload$fn__6391.invoke(reload.clj:14)
at backtype.storm.ui.core$catch_errors$fn__8216.invoke(core.clj:909)
at
ring.middleware.keyword_params$wrap_keyword_params$fn__7033.invoke(keyword_params.clj:27)
at
ring.middleware.nested_params$wrap_nested_params$fn__7072.invoke(nested_params.clj:65)
at ring.middleware.params$wrap_params$fn__7005.invoke(params.clj:55)
at
ring.middleware.multipart_params$wrap_multipart_params$fn__7100.invoke(multipart_params.clj:103)
at ring.middleware.flash$wrap_flash$fn__7281.invoke(flash.clj:14)
at ring.middleware.session$wrap_session$fn__7270.invoke(session.clj:43)
at ring.middleware.cookies$wrap_cookies$fn__7201.invoke(cookies.clj:160)
at ring.adapter.jetty$proxy_handler$fn__7481.invoke(jetty.clj:16)
at
ring.adapter.jetty.proxy$org.mortbay.jetty.handler.AbstractHandler$0.handle(Unknown
Source)
at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at
org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
at
org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
I'm guessing I need to do a search and replace for the m as well and not
just id? I know this pull request is not complete, I wanted to create a pull
request and make sure I'm taking the correct approach to resolving this ticket.
P.S
I changed word count topology just for testing purpose, I will revert it
back once I complete the testing.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/NareshKosgi/incubator-storm storm-456
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/storm/pull/303.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 #303
----
commit e72a94c1de7dd4fa7744c9dd914439bcd59a634b
Author: Naresh Kosgi <[email protected]>
Date: 2014-10-18T02:57:52Z
routes look for the plus sign
commit ccbfad1fec3f99531a8160dae51419abc3e5bb87
Author: Naresh Kosgi <[email protected]>
Date: 2014-10-27T16:12:18Z
using word count to test
----
---
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.
---