ambari-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Hurley (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (AMBARI-18539) Remove Unnecessary Locks Inside Of Host Business Object Implementations
Date Thu, 06 Oct 2016 15:57:20 GMT

     [ https://issues.apache.org/jira/browse/AMBARI-18539?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jonathan Hurley updated AMBARI-18539:
-------------------------------------
    Attachment: AMBARI-18539.patch

> Remove Unnecessary Locks Inside Of Host Business Object Implementations
> -----------------------------------------------------------------------
>
>                 Key: AMBARI-18539
>                 URL: https://issues.apache.org/jira/browse/AMBARI-18539
>             Project: Ambari
>          Issue Type: Task
>          Components: ambari-server
>    Affects Versions: 2.5.0
>            Reporter: Jonathan Hurley
>            Assignee: Jonathan Hurley
>            Priority: Critical
>             Fix For: 2.5.0
>
>         Attachments: AMBARI-18539.patch
>
>
> Many of the business object implementations include needless locks which simply add the
overhead and contention in larger clusters. Some examples of these are :
> - HostImpl
> -- get/set DisksInfo()
> -- get/set TotalMemBytes()
> - ServiceComponentHostImpl
> -- get/set MaintenanceState()
> -- get/set LastOpLastUpdateTime()
> These types of methods are found on other business classes as well, like {{ClusterImpl}}
and {{ServiceImpl}}. Additionally, methods like {{convertToResponse()}} and {{debugDump()}}
need not acquire locks since they are used mostly for serialization of data to the web client
where the data will then immediately become stale anyway.
> The {{Host}} business object should have the following work performed:
> - Remove locking around areas where its no longer required
> - Replace collections with thread-safe concurrent versions
> - Remove some reliance on state-full business objects (caches)



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

Mime
View raw message