[ https://issues.apache.org/jira/browse/NIFI-1085?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14989974#comment-14989974 ]
Michael Moser commented on NIFI-1085: ------------------------------------- Tested my ability to write to nifi git repo at git-wip-us.apache.org, success. This small patch has been tested for a week on 2 different clusters. Consensus of users is this change has no ill effects. Users say the NiFi UI *seems* to present "spinning wheel of death" for shorter periods of time when cluster is busy. > WebClusterManager starves immutable API requests under heavy load conditions > ---------------------------------------------------------------------------- > > Key: NIFI-1085 > URL: https://issues.apache.org/jira/browse/NIFI-1085 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework > Affects Versions: 0.3.0 > Reporter: Michael Moser > > With a 6 node cluster with thousands of components on the graph, we noticed > that the ReentrantReadWriteLock in WebClusterManager can starve NiFi Web > Server threads that are waiting on the read lock. > Thread dumps shows the HeartbeatMonitoringTimerTask thread holding the write > lock while many Web Server threads are parked waiting on the read lock. > Modify the ReentrantReadWriteLock to operate in fair mode (to give the lock > to threads waiting the longest, such as those wanting the read lock). > Modify the HearbeatMonitoringTimerTask timer to not be scheduleAtFixedRate() > but instead use schedule() to execute it less often if garbage collection > blocks it. -- This message was sent by Atlassian JIRA (v6.3.4#6332)