[ 
https://issues.apache.org/jira/browse/HBASE-12081?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14146553#comment-14146553
 ] 

Andrew Purtell commented on HBASE-12081:
----------------------------------------

For an earlier discussion with folks at Oracle I ran jdeps analysis over the 
core Hadoop ecosystem and related projects that have notable or emerging user 
bases (in my opinion, some may debate...): Hadoop, ZooKeeper, Hive(+Tez), Pig, 
HBase, Oozie, Flume, Sqoop, Avro, Thrift, Accumulo, Cassandra, Crunch, 
Cascading, Elasticsearch, Giraph, Kafka, Mahout, Parquet, Optiq, Solr/Lucene, 
Spark, Storm. I picked recent releases except for HBase and Optiq, which I 
built from source. For Optiq because I could not find a binary distribution at 
the time. For HBase I used 0.99-SNAPSHOT because it has the new dependencies on 
Netty 4 and the LMAX Disruptor that will be in the upcoming 1.0 release. There 
are some common dependencies (Netty, Guava, Derby, the Scala runtime, Coda 
Hale's Metrics, LMAX Disruptor) that use internal sun.* APIs. We would need 
versions of these dependencies which do not make those calls available before 
we could eliminate internal API calls through this route. Other uses fall into 
a few common patterns. Daemons use Signal/SignalHandler for catching signals. 
Datastores such as HBase, Hive, and Cassandra are seeking their own high 
performance optimizations with Unsafe, including direct memory allocation. Avro 
and Kyro are serialization libraries seeking high performance via Unsafe on hot 
code paths. Hadoop and HBase utilize some security APIs for Kerberos and SSL 
which seem to have no non-internal API analogues. Pig and HBase pull in Jython 
and JRuby, respectively. Jython uses a bit of Unsafe. JRuby is an aggressive 
user of JVM internals.

> Considering Java 9
> ------------------
>
>                 Key: HBASE-12081
>                 URL: https://issues.apache.org/jira/browse/HBASE-12081
>             Project: HBase
>          Issue Type: Umbrella
>            Reporter: Andrew Purtell
>
> Java 9 will ship in 2016. This will be the first Java release that makes a 
> significant compatibility departure from earlier runtimes. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to