-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/51498/
-----------------------------------------------------------

(Updated Aug. 29, 2016, 3:43 p.m.)


Review request for Ambari, Nate Cole, Robert Levas, and Robert Nettleton.


Bugs: AMBARI-18271
    https://issues.apache.org/jira/browse/AMBARI-18271


Repository: ambari


Description
-------

When a cluster is being created initially, there are many new alert instances 
being generated concurrently. This can lead to a race condition where certain 
alert types, such as aggregate alerts, fire several events and end up creating 
duplicate alert instances.

Although aggregate alerts are the most common, the flaw is in the alert 
listener since it never guarantees uniqueness even though it supports 
concurrent events.

This problem is mainly encountered when the cluster is initially created, and 
therefore a solution shouldn't impact the rest of the cluster's lifetime. In 
other words, we shouldn't cause a degradation the other 99.9% of the time in 
order to fix this problem.


Diffs
-----

  
ambari-server/src/main/java/org/apache/ambari/server/events/listeners/alerts/AlertReceivedListener.java
 2dcf1d6 
  
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertCurrentEntity.java
 b30b100 
  
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertDefinitionEntity.java
 638646c 
  
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertHistoryEntity.java
 8bc4b99 
  
ambari-server/src/test/java/org/apache/ambari/server/orm/entities/AlertCurrentEntityTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/orm/entities/AlertDefinitionEntityTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/orm/entities/AlertHistoryEntityTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertReceivedListenerTest.java
 7bf11e3 

Diff: https://reviews.apache.org/r/51498/diff/


Testing (updated)
-------

A new unit test was written which reproduced the problem, passing once the 
patch was complete.

Tests run: 4619, Failures: 0, Errors: 0, Skipped: 34

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 34:07 min
[INFO] Finished at: 2016-08-29T14:23:54-04:00
[INFO] Final Memory: 38M/684M
[INFO] ------------------------------------------------------------------------


Thanks,

Jonathan Hurley

Reply via email to