[jira] [Updated] (AMBARI-18603) Remove Unnecessary Locks Inside Of ServiceComponent Business Object Implementations
[ https://issues.apache.org/jira/browse/AMBARI-18603?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Hurley updated AMBARI-18603: - Resolution: Fixed Status: Resolved (was: Patch Available) > Remove Unnecessary Locks Inside Of ServiceComponent Business Object > Implementations > --- > > Key: AMBARI-18603 > URL: https://issues.apache.org/jira/browse/AMBARI-18603 > 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-18603.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 {{ServiceComponent}} 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)
[jira] [Updated] (AMBARI-18603) Remove Unnecessary Locks Inside Of ServiceComponent Business Object Implementations
[ https://issues.apache.org/jira/browse/AMBARI-18603?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Hurley updated AMBARI-18603: - Attachment: AMBARI-18603.patch > Remove Unnecessary Locks Inside Of ServiceComponent Business Object > Implementations > --- > > Key: AMBARI-18603 > URL: https://issues.apache.org/jira/browse/AMBARI-18603 > 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-18603.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 {{ServiceComponent}} 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)
[jira] [Updated] (AMBARI-18603) Remove Unnecessary Locks Inside Of ServiceComponent Business Object Implementations
[ https://issues.apache.org/jira/browse/AMBARI-18603?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Hurley updated AMBARI-18603: - Status: Patch Available (was: Open) > Remove Unnecessary Locks Inside Of ServiceComponent Business Object > Implementations > --- > > Key: AMBARI-18603 > URL: https://issues.apache.org/jira/browse/AMBARI-18603 > 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 > > > 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 {{ServiceComponent}} 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)