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


Ship it!




Ship It!

- Dmytro Sen


On Июнь 6, 2016, 6:26 д.п., Qin Liu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/48262/
> -----------------------------------------------------------
> 
> (Updated Июнь 6, 2016, 6:26 д.п.)
> 
> 
> Review request for Ambari, Aravindan Vijayan, Dmytro Sen, and Sid Wagle.
> 
> 
> Bugs: AMBARI-16852
>     https://issues.apache.org/jira/browse/AMBARI-16852
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> httpclient-4.0.1.jar used by Ambari Metrics collector does not have method 
> URLEncodedUtils.parse (final URI uri, final String encoding). This will cause 
> the metrics not to be populated and the collector log to be flooded with the 
> following exception when the Ambari Metrics service is in distributed mode 
> and the user configures http authentication filter without enabling Kerberos:
> 
> 21:54:08,215 ERROR [1831490216@qtp-1883237069-7582] log:87 - Error for 
> /ws/v1/timeline/metrics
> java.lang.NoSuchMethodError: 
> org.apache.http.client.utils.URLEncodedUtils.parse(Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/util/List;
> at 
> org.apache.hadoop.security.authentication.server.PseudoAuthenticationHandler.getUserName(PseudoAuthenticationHandler.java:143)
> at 
> org.apache.hadoop.security.authentication.server.PseudoAuthenticationHandler.authenticate(PseudoAuthenticationHandler.java:179)
> at 
> org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:507)
> at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
> at 
> org.apache.hadoop.http.HttpServer2$QuotingInputFilter.doFilter(HttpServer2.java:1224)
> at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
> at org.apache.hadoop.http.NoCacheFilter.doFilter(NoCacheFilter.java:45)
> at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
> at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
> at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
> 
> Steps to reproduce:
> 1. install a cluster with default from Ambari Web UI.
> 2. configure Ambari Metrics service in distributed mode.
> 3. Add the following properties in Custom core-site from Ambari Web UI:
> 1). 
> hadoop.http.authentication.signature.secret.file=/etc/security/http_secret.
> 2). 
> hadoop.http.filter.initializers=org.apache.hadoop.security.AuthenticationFilterInitialize.
> 4. create /etc/security/http_secret text file on each node.
> 5. restart HDFS, YARN, Mapreduce2, HBase, Kafka, and Ambari Metrics service.
> 6. Metrics on dashboard and HDFS, YARN, HBase, Kafka, and Amabari Metrics 
> will show No Data Available.
> 
> 
> Diffs
> -----
> 
>   ambari-metrics/ambari-metrics-timelineservice/pom.xml 29f7812 
> 
> Diff: https://reviews.apache.org/r/48262/diff/
> 
> 
> Testing
> -------
> 
> FIX:
> 1. update Ambari Metrics collector pom.xml to use httpclient-4.2.5.jar.
> 2. without the fix, the collector lib contains httpclient-4.0.1.jar and 
> httpcore-4.2.5.jar.
> 3. with the fix, the collector lib will have httpclient-4.2.5.jar and 
> httpcore-4.2.4.jar.
> 
> TESTS:
> 1. The Ambari Metrics unit tests.
> 2. Also tested with HDP UI - after replacing httpclient-4.0.1.jar and 
> httpcore-4.2.5.jar with httpclient-4.2.5.jar and httpcore-4.2.4.jar, the 
> missing metrics show up.
> 
> 
> Thanks,
> 
> Qin Liu
> 
>

Reply via email to