[ 
https://issues.apache.org/jira/browse/AMBARI-9965?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14351661#comment-14351661
 ] 

Hudson commented on AMBARI-9965:
--------------------------------

ABORTED: Integrated in Ambari-branch-2.0.0 #25 (See 
[https://builds.apache.org/job/Ambari-branch-2.0.0/25/])
AMBARI-9965 - RU - Improve performance for large cluster in 
StackVersionListener (tbeerbower) (tbeerbower: 
http://git-wip-us.apache.org/repos/asf?p=ambari.git&a=commit&h=ee666561a273e64b8306714b95c2c0e83ee4ea81)
* 
ambari-server/src/main/java/org/apache/ambari/server/agent/HeartBeatHandler.java
* 
ambari-server/src/main/java/org/apache/ambari/server/events/listeners/upgrade/StackVersionListener.java
* 
ambari-server/src/main/java/org/apache/ambari/server/events/publishers/VersionEventPublisher.java
* 
ambari-server/src/test/java/org/apache/ambari/server/events/listeners/upgrade/StackVersionListenerTest.java
* 
ambari-server/src/test/java/org/apache/ambari/server/events/publishers/VersionEventPublisherTest.java


> RU - Improve performance for large cluster in StackVersionListener
> ------------------------------------------------------------------
>
>                 Key: AMBARI-9965
>                 URL: https://issues.apache.org/jira/browse/AMBARI-9965
>             Project: Ambari
>          Issue Type: Task
>            Reporter: Tom Beerbower
>            Assignee: Tom Beerbower
>             Fix For: 2.0.0
>
>         Attachments: AMBARI-9965.patch
>
>
> On a large cluster, all of the agents will heartbeat during registration at 
> the same time, so the HearbeatHandler has to be fast. Right now, the logic to 
> handle host versions is done as part of StackVersionListener, which uses the 
> AmbariEventPublisher, and acquires a lock.
> *This means that the heartbeats will compete for the same lock in a piece of 
> code that makes a lot of DB calls.*
> Use a separate EventBus since we should not listen for host version changes 
> using AmbariEventPublisher
> We should also move HearbeatHandler.java (around line 520)
> {code}
> HostComponentVersionEvent event = new HostComponentVersionEvent(cl, scHost);
> ambariEventPublisher.publish(event);
> {code}
> inside the handleComponentVersionReceived() method.
> As an optimization, we should consider only registering the event if 
> "previousVersion" differs from the new value.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to