ambari-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Keta Patel <patel...@us.ibm.com>
Subject Re: Review Request 43154: AMBARI-14766: Selecting ALL groups does not work under Manage Alert Notifications
Date Thu, 04 Feb 2016 17:49:22 GMT


> On Feb. 4, 2016, 1:14 p.m., Di Li wrote:
> > hello Keta, 
> > 
> > Please add Jonathan Hurley to the review.

Thank you Di, I added him.


- Keta


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


On Feb. 3, 2016, 11:34 p.m., Keta Patel wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/43154/
> -----------------------------------------------------------
> 
> (Updated Feb. 3, 2016, 11:34 p.m.)
> 
> 
> Review request for Ambari, Alexandr Antonenko, Di Li, and Oleg Nechiporenko.
> 
> 
> Bugs: AMBARI-14766
>     https://issues.apache.org/jira/browse/AMBARI-14766
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Selecting "ALL" groups does not work under Manage Alert Notifications.
> 
> Reproduction Steps:-
> 1. Go to Alerts Tab in Ambari GUI
> 2. Actions --> Manage Notifications
> 3. Create New Alert Notification (Click the custom radio button for groups and select
couple of options eg HDFS, PIG)
> 4. Save it.
> 5. Edit the newly created Alert notification by clicking on the All radio button. Everything
gets selected.
> 6. Save it
> 
> Expected results:
> On Saving the Alert notification, the dialog box "Manage Alert Notification" should show
Groups as ALL ( or Show all the values eg HDFS, PIG, MR2). Basically all the values should
be selected.
> 
> 
> Diffs
> -----
> 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AlertTargetResourceProvider.java
d28987d 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertTargetResourceProviderTest.java
f80b6f7 
>   ambari-web/app/controllers/main/alerts/manage_alert_notifications_controller.js 38e4e75

> 
> Diff: https://reviews.apache.org/r/43154/diff/
> 
> 
> Testing
> -------
> 
> FIX:
> ====
> The UI did not show "All" even after selecting "ALL" for Groups in the Edit Alert Target
pop-up because the property "selectedAlertGroup" was not set to true even after the selection.
This is fixed in the "manageAlertGroupsController" in ambari-web.
> 
> However, this only resolved the UI issue. The alert notifications were still not sent
for all services after this change. This was because there was no corresponding update made
in the server code for this "ALL" Groups selection for a Target. The DB has a table for AlertTarget
(alert_target) and AlertGroup (alert_group). There is a many-to-many mapping between these
2 tables, which is tracked in the combination table alert_group_target. 
> 1. This combination table was not getting updated for the "ALL" Groups selection. 
> 2. Also, the Target was not updated as global in the DB. 
> 
> The "updateAlertTargets()" in "AlertTargetResourceProvider" is updated with the fix for
both these issues.
> The global property in Target is set if the ALL selection is made.
> And, if the Target is global, all the groups in the DB are upadted with the current Target
in the alert_group_target table.
> 
> 
> TESTS:
> ======
> 2 test cases are added to test for Custom and All Group selections.
> In case of Custom, the request to the REST API has group IDs passed and the global paramter
is false.
> The Target after this update must have global as false and should be mapped to only the
selected groups passed in the request.
> 
> In case of All, the request to the REST API does not have group IDs passed and the global
paramter is true.
> The Target after this update must contain global as true and should be mapped to all
the groups in the DB.
> 
> 
> Thanks,
> 
> Keta Patel
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message