Kevin Sweeney created AURORA-800:
------------------------------------

             Summary: consider using Guava's CycleDetectingLockFactory
                 Key: AURORA-800
                 URL: https://issues.apache.org/jira/browse/AURORA-800
             Project: Aurora
          Issue Type: Story
          Components: Reliability, Scheduler
            Reporter: Kevin Sweeney
            Priority: Minor


Occasional scheduler deadlock bugs would have benefited from proactive 
detection. Guava provides a utility class, 
[CycleDetectingLockFactory|http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/util/concurrent/CycleDetectingLockFactory.html],
 which is well-suited to this task.

Keeping with our general practice of leaving all assertions enabled at runtime 
unless data suggests performance is impacted, I propose replacing almost all 
usage of the {{synchronized}} keyword or a {{ReentrantReadWriteLock}} with a 
{{CycleDetectingLockFactory}}-managed variant unless we have data to suggest 
performance would be adversely impacted.



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

Reply via email to