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

(Updated Aug. 3, 2016, 6:11 p.m.)


Review request for Ambari, Alexander Denissov and Lav Jain.


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


Repository: ambari


Description
-------

HAWQ service advisor shows wrong recommendations on edge cases


Diffs (updated)
-----

  
ambari-server/src/main/resources/common-services/HAWQ/2.0.0/configuration/hawq-site.xml
 9baaa1c 
  
ambari-server/src/main/resources/common-services/HAWQ/2.0.0/service_advisor.py 
0777dc6 
  ambari-server/src/main/resources/stacks/stack_advisor.py 437fe4f 
  ambari-server/src/test/python/common-services/HAWQ/test_service_advisor.py 
7ececa0 

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


Testing
-------

Manually tested on live cluster.

Added unit tests
```
test_hawq_master_critical 
(test_alert_component_status.TestAlertComponentStatus) ... ok
test_hawq_master_ok (test_alert_component_status.TestAlertComponentStatus) ... 
ok
test_hawq_segment_critical 
(test_alert_component_status.TestAlertComponentStatus) ... ok
test_hawq_segment_ok (test_alert_component_status.TestAlertComponentStatus) ... 
ok
test_hawq_standby_critical 
(test_alert_component_status.TestAlertComponentStatus) ... ok
test_hawq_standby_ok (test_alert_component_status.TestAlertComponentStatus) ... 
ok
test_missing_configs (test_alert_component_status.TestAlertComponentStatus) ... 
ok
test_exception_registration_status 
(test_alert_segment_registration_status.TestAlertRegistrationStatus) ... No 
handlers could be found for logger "ambari_alerts"
ok
test_missing_configs 
(test_alert_segment_registration_status.TestAlertRegistrationStatus) ... ok
test_missing_slave_file 
(test_alert_segment_registration_status.TestAlertRegistrationStatus) ... ok
test_successful_registration_status 
(test_alert_segment_registration_status.TestAlertRegistrationStatus) ... ok
test_unsuccessful_empty_db_registration_status 
(test_alert_segment_registration_status.TestAlertRegistrationStatus) ... ok
test_unsuccessful_registration_status 
(test_alert_segment_registration_status.TestAlertRegistrationStatus) ... ok
test_unsuccessful_registration_status_plural 
(test_alert_segment_registration_status.TestAlertRegistrationStatus) ... ok
test_missing_configs (test_alert_sync_status.TestAlertSyncStatus) ... ok
test_no_standby_state (test_alert_sync_status.TestAlertSyncStatus) ... ok
test_none_state (test_alert_sync_status.TestAlertSyncStatus) ... ok
test_not_configured_state (test_alert_sync_status.TestAlertSyncStatus) ... ok
test_not_synchronized_state (test_alert_sync_status.TestAlertSyncStatus) ... ok
test_synchronized_state (test_alert_sync_status.TestAlertSyncStatus) ... ok
test_synchronizing_state (test_alert_sync_status.TestAlertSyncStatus) ... ok
test_unknown_state (test_alert_sync_status.TestAlertSyncStatus) ... ok
test_configure_default (test_hawqmaster.TestHawqMaster) ... ok
test_install_default (test_hawqmaster.TestHawqMaster) ... ok
test_remove_hawq_standby (test_hawqmaster.TestHawqMaster)
Run custom command Remove HAWQ Standby ... 2016-08-02 18:01:23,293 - Removing 
HAWQ Standby Master ...
ok
test_resync_hawq_standby (test_hawqmaster.TestHawqMaster)
Run custom command Resync HAWQ Standby ... 2016-08-02 18:01:23,295 - HAWQ 
Standby Master Re-Sync started in fast mode...
ok
test_run_hawq_check_case1 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 1: Non HDFS-HA, Standalone Resource Management, Not 
Kerberized ... 2016-08-02 18:01:23,298 - Executing HAWQ Check ...
ok
test_run_hawq_check_case10 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 10: HDFS-HA, YARN Resource Management Non YARN_HA, 
Kerberized ... 2016-08-02 18:01:23,304 - Executing HAWQ Check ...
ok
test_run_hawq_check_case11 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 11: HDFS-HA, YARN Resource Management YARN_HA, Not 
Kerberized ... 2016-08-02 18:01:23,309 - Executing HAWQ Check ...
ok
test_run_hawq_check_case12 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 12: HDFS-HA, YARN Resource Management YARN_HA, 
Kerberized ... 2016-08-02 18:01:23,315 - Executing HAWQ Check ...
ok
test_run_hawq_check_case2 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 2: Non HDFS-HA, Standalone Resource Management, 
Kerberized ... 2016-08-02 18:01:23,320 - Executing HAWQ Check ...
ok
test_run_hawq_check_case3 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 3: Non HDFS-HA, YARN Resource Management Non YARN_HA, 
Not Kerberized ... 2016-08-02 18:01:23,327 - Executing HAWQ Check ...
ok
test_run_hawq_check_case4 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 4: Non HDFS-HA, YARN Resource Management Non YARN_HA, 
Kerberized ... 2016-08-02 18:01:23,332 - Executing HAWQ Check ...
ok
test_run_hawq_check_case5 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 5: Non HDFS-HA, YARN Resource Management YARN_HA, Not 
Kerberized ... 2016-08-02 18:01:23,337 - Executing HAWQ Check ...
ok
test_run_hawq_check_case6 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 6: Non HDFS-HA, YARN Resource Management YARN_HA, 
Kerberized ... 2016-08-02 18:01:23,343 - Executing HAWQ Check ...
ok
test_run_hawq_check_case7 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 7: HDFS-HA, Standalone Resource Management, Not 
Kerberized ... 2016-08-02 18:01:23,348 - Executing HAWQ Check ...
ok
test_run_hawq_check_case8 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 8: HDFS-HA, Standalone Resource Management, Kerberized 
... 2016-08-02 18:01:23,355 - Executing HAWQ Check ...
ok
test_run_hawq_check_case9 (test_hawqmaster.TestHawqMaster)
Running HAWQ Check Case 9: HDFS-HA, YARN Resource Management Non YARN_HA, Not 
Kerberized ... 2016-08-02 18:01:23,360 - Executing HAWQ Check ...
ok
test_start_default (test_hawqmaster.TestHawqMaster) ... 2016-08-02 18:01:23,368 
- Skipping ssh key exchange with HAWQ hosts as hawq_ssh_exkeys is either set to 
false or is not available in hawq-env.xml
ok
test_stop_cluster_immediate (test_hawqmaster.TestHawqMaster)
Run Stop HAWQ Cluster Immediate Mode ... ok
test_stop_default (test_hawqmaster.TestHawqMaster)
Run Stop HAWQMASTER ... ok
test_configure_default (test_hawqsegment.TestHawqSegment) ... ok
test_install_default (test_hawqsegment.TestHawqSegment) ... ok
test_start_default (test_hawqsegment.TestHawqSegment) ... ok
test_stop_default (test_hawqsegment.TestHawqSegment) ... ok
test_activate_hawq_standby (test_hawqstandby.TestHawqStandby)
Test Activate HAWQ Standby Command ... 2016-08-02 18:01:23,395 - Activating 
HAWQ standby...
ok
test_configure_default (test_hawqstandby.TestHawqStandby) ... ok
test_install_default (test_hawqstandby.TestHawqStandby) ... ok
test_start_default (test_hawqstandby.TestHawqStandby) ... ok
test_stop_default (test_hawqstandby.TestHawqStandby) ... ok
test_createComponentLayoutRecommendations_hawq_1_Host 
(test_service_advisor.TestHAWQ200ServiceAdvisor) ... ok
test_createComponentLayoutRecommendations_hawq_3_Hosts 
(test_service_advisor.TestHAWQ200ServiceAdvisor)
Test that HAWQSTANDBY is recommended on a 3-node cluster ... ok
test_createComponentLayoutRecommendations_hawqsegment_add_service_wizard_already_installed
 (test_service_advisor.TestHAWQ200ServiceAdvisor)
Test that HAWQSEGMENT does not get recommended during Add Service Wizard, when 
HAWQ has already been installed ... ok
test_createComponentLayoutRecommendations_hawqsegment_add_service_wizard_to_be_installed
 (test_service_advisor.TestHAWQ200ServiceAdvisor)
Test that HAWQSEGMENT gets recommended correctly during Add Service Wizard, 
when HAWQ is selected for installation ... ok
test_createComponentLayoutRecommendations_hawqsegment_cluster_install 
(test_service_advisor.TestHAWQ200ServiceAdvisor)
Test that HAWQSEGMENT gets recommended correctly during Cluster Install Wizard, 
when HAWQ is selected for installation ... ok
test_createComponentLayoutRecommendations_no_hawq_3_Hosts 
(test_service_advisor.TestHAWQ200ServiceAdvisor)
Test no failures when there are no HAWQ components ... ok
test_getComponentLayoutValidations_hawq_3_Hosts 
(test_service_advisor.TestHAWQ200ServiceAdvisor)
Test layout validations for HAWQ components on a 3-node cluster ... ok
test_getComponentLayoutValidations_hawqsegment_not_co_located_with_datanode 
(test_service_advisor.TestHAWQ200ServiceAdvisor)
Test validation warning for HAWQ segment not colocated with DATANODE ... ok
test_getComponentLayoutValidations_nohawq_3_Hosts 
(test_service_advisor.TestHAWQ200ServiceAdvisor)
Test no failures when there are no HAWQ components on a 3-node cluster ... ok
test_getHostsForMasterComponent 
(test_service_advisor.TestHAWQ200ServiceAdvisor) ... ok
test_getServiceConfigurationRecommendations 
(test_service_advisor.TestHAWQ200ServiceAdvisor) ... ok
test_validateHAWQHdfsClientConfigurations 
(test_service_advisor.TestHAWQ200ServiceAdvisor) ... ok
test_validateHAWQSiteConfigurations 
(test_service_advisor.TestHAWQ200ServiceAdvisor) ... ok
test_validateHDFSSiteConfigurations 
(test_service_advisor.TestHAWQ200ServiceAdvisor) ... ok
test_generate_hawq_process_status_cmd (test_utils.TestUtils) ... ok

----------------------------------------------------------------------
Ran 65 tests in 0.219s

OK
ServiceAdvisor implementation for service HAWQ was loaded
ServiceAdvisor implementation for service HAWQ was loaded
ServiceAdvisor implementation for service HAWQ was loaded
ServiceAdvisor implementation for service HAWQ was loaded
ServiceAdvisor implementation for service HAWQ was loaded
ServiceAdvisor implementation for service HAWQ was loaded
ServiceAdvisor implementation for service HAWQ was loaded

```


Thanks,

Matt

Reply via email to