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 <nareshko...@gmail.com> Date: 2014-10-18T02:57:52Z routes look for the plus sign commit ccbfad1fec3f99531a8160dae51419abc3e5bb87 Author: Naresh Kosgi <nareshko...@gmail.com> 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 infrastruct...@apache.org or file a JIRA ticket with INFRA. ---