hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jeff saremi <jeffsar...@hotmail.com>
Subject Re: Metric sink client keeps crashing the components with SSL-related exception
Date Wed, 15 Feb 2017 05:20:46 GMT
This turned out to be a result of multiple versions of apache http components.
I made sure my code used the same version of dependencies as the HBase instance we had.

________________________________
From: jeff saremi <jeffsaremi@hotmail.com>
Sent: Tuesday, February 14, 2017 12:10:58 PM
To: user@hbase.apache.org
Subject: Metric sink client keeps crashing the components with SSL-related exception

This is really not an HBase issue but rather hadoop metrics issue (and it may not be that
either) but I'll just post here to see if someone knows why this is happening.
I've created  a new Metrics2 Sink which will send the metrics over http to some server.

I can test this locally with no issues. However as soon as we place this in HBase, we get
the following error:


2017-02-14 12:03:01,407 ERROR [main] master.HMasterCommandLine: Master exiting

java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster.

            at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2422)
...

Caused by: java.lang.NoSuchFieldError: INSTANCE

            at org.apache.http.conn.ssl.SSLConnectionSocketFactory.<clinit>(SSLConnectionSocketFactory.java:144)

            at org.apache.http.impl.conn.BasicHttpClientConnectionManager.getDefaultRegistry(BasicHttpClientConnectionManager.java:117)

            at org.apache.http.impl.conn.BasicHttpClientConnectionManager.<init>(BasicHttpClientConnectionManager.java:161)

            at com.bing.hadoop.metrics.MdmServiceClient.<init>(MdmServiceClient.java:30)

            at com.bing.hadoop.metrics.MdmSink.init(MdmSink.java:37)

I have not even set the URL yet and my url is plain http and not https. I don't want SSL at
all in this case.
Here's my construction code:

public MdmServiceClient(String server, int port) throws Exception {
    HttpClientConnectionManager connectionManager = new BasicHttpClientConnectionManager();
    _httpClient = HttpClientBuilder.create().setConnectionManager(connectionManager).build();
    _uri = new URIBuilder().setScheme("http").setHost(server).setPort(port).setPath("/metrics").build();
}

Line 30 refers to new BasicHttp...

This is line 37 in MdmSink:

_mdmClient = new MdmServiceClient(server, port);

thanks

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