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

Review request for Ambari.


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


Repository: ambari


Description
-------

When we request '/ws/v1/timeline/metrics' with metric name which contains %25 
(escaped '%'), response for the API is json describing there's NPE.
And NPE is logged for ambari-metrics-collector log file.

```
2016-05-30 09:15:05,061 WARN 
org.apache.hadoop.yarn.webapp.GenericExceptionHandler: INTERNAL_SERVER_ERROR
java.lang.NullPointerException
        at 
org.apache.hadoop.yarn.server.applicationhistoryservice.metrics.timeline.PhoenixHBaseAccessor.appendAggregateMetricFromResultSet(PhoenixHBaseAccessor.java:810)
        at 
org.apache.hadoop.yarn.server.applicationhistoryservice.metrics.timeline.PhoenixHBaseAccessor.getAggregateMetricRecords(PhoenixHBaseAccessor.java:772)
        at 
org.apache.hadoop.yarn.server.applicationhistoryservice.metrics.timeline.HBaseTimelineMetricStore.getTimelineMetrics(HBaseTimelineMetricStore.java:178)
        at 
org.apache.hadoop.yarn.server.applicationhistoryservice.webapp.TimelineWebServices.getTimelineMetrics(TimelineWebServices.java:372)
        at sun.reflect.GeneratedMethodAccessor21.invoke(Unknown Source)
```

Reason of NPE: 

Metrics are properly fetched with wildcard. But when applying functions to 
result set, actual metric name is not exist from map of metric name to list of 
function.


Diffs
-----

  
ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/PhoenixHBaseAccessor.java
 47962cb 

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


Testing
-------

Test failed from local but it's occurred from another modules, which is not 
related to current modification.

```
Results :

Failed tests:
  PrivilegeEventCreatorTest.putTest:107 expected:<...), Roles(
Permission[2:
  Users: testuser2
Permission1:
  Users: testuser
  Groups: testgroup])> but was:<...), Roles(
Permission[1:
  Users: testuser
  Groups: testgroup
Permission2:
  Users: testuser2])>
  RepositoryVersionEventCreatorTest.postTest:70 expected:<...ating system: 
redhat[6
    Repository ID(2), Repository name(MyRepo6), Base url(http://example6.com)
Operating system: redhat7
    Repository ID(1), Repository name(MyRepo), Base url(http://example].com)
)> but was:<...ating system: redhat[7
    Repository ID(1), Repository name(MyRepo), Base url(http://example.com)
Operating system: redhat6
    Repository ID(2), Repository name(MyRepo6), Base url(http://example6].com)
)>
  RepositoryVersionEventCreatorTest.putTest:100 expected:<...ating system: 
redhat[6
    Repository ID(2), Repository name(MyRepo6), Base url(http://example6.com)
Operating system: redhat7
    Repository ID(1), Repository name(MyRepo), Base url(http://example].com)
)> but was:<...ating system: redhat[7
    Repository ID(1), Repository name(MyRepo), Base url(http://example.com)
Operating system: redhat6
    Repository ID(2), Repository name(MyRepo6), Base url(http://example6].com)
)>
  ViewPrivilegeEventCreatorTest.putTest:85 expected:<...tatus(200 OK), 
Type([MyView), Version(MyView), Name(MyView), Permissions(
Permission2:
  Users: testuser2
Permission1:
  Users: testuser
  Groups: testgroup])> but was:<...tatus(200 OK), Type([null), Version(null), 
Name(null), Permissions(
Permission1:
  Users: testuser
  Groups: testgroup
Permission2:
  Users: testuser2])>
  
ComponentResourceProviderTest.testGetResourcesAsAdministrator:190->testGetResources:296
 expected:<[tru]e> but was:<[fals]e>
  
ComponentResourceProviderTest.testGetResourcesAsClusterAdministrator:195->testGetResources:296
 expected:<[tru]e> but was:<[fals]e>
  
ComponentResourceProviderTest.testGetResourcesAsServiceAdministrator:200->testGetResources:296
 expected:<[tru]e> but was:<[fals]e>
  
AmbariLdapDataPopulatorTest.testSynchronizeExistingLdapGroups_removeDuringIteration:333
  Expectation failure on verify:
    AmbariLdapDataPopulatorTestInstance.getLdapGroupByMemberAttr("group2"): 
expected: 1, actual: 0
  UpgradeCatalog222Test.testInitializeStromAndKafkaWidgets:1107
  Unexpected method call 
AmbariManagementController.initializeWidgetsAndLayouts(EasyMock for interface 
org.apache.ambari.server.state.Cluster, EasyMock for interface 
org.apache.ambari.server.state.Service):
    AmbariManagementController.getClusters(): expected: at least 0, actual: 1
    AmbariManagementController.initializeWidgetsAndLayouts(EasyMock for 
interface org.apache.ambari.server.state.Cluster, EasyMock for interface 
org.apache.ambari.server.state.Service): expected: 1, actual: 0
Tests in error:
  KerberosCheckerTest.testCheckFailed »  Unexpected exception, 
expected<org.apac...
  KerberosCheckerTest.testCheckPassed:62 » ClassCast class 
sun.security.provider...
  AmbariAuthenticationFilterTest.testOnSuccessfulAuthentication:98 » Linkage 
loa...
  DataStoreImplTest.initializationError » NoClassDefFound 
org/apache/ambari/serv...

Tests run: 4398, Failures: 9, Errors: 4, Skipped: 34

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Ambari Main ........................................ SUCCESS [  4.803 s]
[INFO] Apache Ambari Project POM .......................... SUCCESS [  0.034 s]
[INFO] Ambari Web ......................................... SUCCESS [01:02 min]
[INFO] Ambari Views ....................................... SUCCESS [  3.727 s]
[INFO] Ambari Admin View .................................. SUCCESS [  8.471 s]
[INFO] ambari-metrics ..................................... SUCCESS [  0.381 s]
[INFO] Ambari Metrics Common .............................. SUCCESS [ 12.753 s]
[INFO] Ambari Metrics Hadoop Sink ......................... SUCCESS [  5.044 s]
[INFO] Ambari Metrics Flume Sink .......................... SUCCESS [  6.679 s]
[INFO] Ambari Metrics Kafka Sink .......................... SUCCESS [  4.358 s]
[INFO] Ambari Metrics Storm Sink .......................... SUCCESS [  1.259 s]
[INFO] Ambari Metrics Collector ........................... SUCCESS [05:50 min]
[INFO] Ambari Metrics Monitor ............................. SUCCESS [  7.089 s]
[INFO] Ambari Metrics Grafana ............................. SUCCESS [ 19.939 s]
[INFO] Ambari Metrics Assembly ............................ SUCCESS [ 37.858 s]
[INFO] Ambari Server ...................................... FAILURE [  01:59 h]
[INFO] Ambari Functional Tests ............................ SKIPPED
[INFO] Ambari Agent ....................................... SKIPPED
[INFO] Ambari Client ...................................... SKIPPED
[INFO] Ambari Python Client ............................... SKIPPED
[INFO] Ambari Groovy Client ............................... SKIPPED
[INFO] Ambari Shell ....................................... SKIPPED
[INFO] Ambari Python Shell ................................ SKIPPED
[INFO] Ambari Groovy Shell ................................ SKIPPED
[INFO] ambari-logsearch ................................... SKIPPED
[INFO] Ambari Logsearch Appender .......................... SKIPPED
[INFO] Ambari Logsearch Solr Client ....................... SKIPPED
[INFO] Ambari Logsearch Portal ............................ SKIPPED
[INFO] Ambari Logsearch Log Feeder ........................ SKIPPED
[INFO] Ambari Logsearch Assembly .......................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:08 h
[INFO] Finished at: 2016-05-31T12:33:44+09:00
[INFO] Final Memory: 80M/643M
[INFO] ------------------------------------------------------------------------

```


Thanks,

Jungtaek Lim

Reply via email to