[ https://issues.apache.org/jira/browse/STORM-599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14277273#comment-14277273 ]
ASF GitHub Bot commented on STORM-599: -------------------------------------- GitHub user d2r opened a pull request: https://github.com/apache/storm/pull/381 [Storm 599] Use use nimbus's cached heartbeats rather than fetching again from ZK, take two This is a retry of the reverted pull request #356. In #356, a merge error (we think?) on the branch used for the pull request caused part of the change on one line to go missing. ```Diff - beats (.executor-beats storm-cluster-state storm-id (:executor->node+port assignment)) + beats (map-val :heartbeat @(:heartbeats-cache nimbus)) ``` The new code should have been: ```Diff + beats (map-val :heartbeat (get @(:heartbeats-cache nimbus) storm-id)) ``` This caused incorrect retrieval of heartbeats and therefore metrics were not populated as noted by @harshach [here](https://issues.apache.org/jira/browse/STORM-599?focusedCommentId=14275512&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14275512). Testing again with this branch in a clean environment shows that metrics are updated as expected once per `nimbus.monitor.freq.secs`, which defaults to 10s. You can merge this pull request into a Git repository by running: $ git pull https://github.com/d2r/storm STORM-599-use-cached-hbs Alternatively you can review and apply these changes as the patch at: https://github.com/apache/storm/pull/381.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 #381 ---- commit 1d973c6838118e64024505269b82baffd0f41f8d Author: Derek Dagit <der...@yahoo-inc.com> Date: 2015-01-14T17:12:30Z use hb cache instead of fetching via zk commit fc952d4c64f52e29cd162ffacee984ef36ab9447 Author: Derek Dagit <der...@yahoo-inc.com> Date: 2015-01-14T17:13:05Z Remove unnecessary code ---- > UI is slow due to fetching heartbeats from ZK > --------------------------------------------- > > Key: STORM-599 > URL: https://issues.apache.org/jira/browse/STORM-599 > Project: Apache Storm > Issue Type: Improvement > Affects Versions: 0.9.3 > Reporter: Derek Dagit > Assignee: Derek Dagit > Priority: Minor > > The method getTopologyInfo fetches every heartbeat from ZooKeeper in order to > gather statistics. The UI calls this method via thrift to render the > topology page. > When topologies are launched with thousands of executors, this fetching from > ZK dramatically slows things down. -- This message was sent by Atlassian JIRA (v6.3.4#6332)