Return-Path: X-Original-To: apmail-hbase-dev-archive@www.apache.org Delivered-To: apmail-hbase-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6584618802 for ; Tue, 6 Oct 2015 00:35:55 +0000 (UTC) Received: (qmail 91728 invoked by uid 500); 6 Oct 2015 00:35:53 -0000 Delivered-To: apmail-hbase-dev-archive@hbase.apache.org Received: (qmail 91630 invoked by uid 500); 6 Oct 2015 00:35:53 -0000 Mailing-List: contact dev-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hbase.apache.org Delivered-To: mailing list dev@hbase.apache.org Received: (qmail 91558 invoked by uid 99); 6 Oct 2015 00:35:53 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Oct 2015 00:35:53 +0000 Received: from mail-ig0-f182.google.com (mail-ig0-f182.google.com [209.85.213.182]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id 863A11A003F for ; Tue, 6 Oct 2015 00:35:52 +0000 (UTC) Received: by igcrk20 with SMTP id rk20so73821129igc.1 for ; Mon, 05 Oct 2015 17:35:51 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.50.64.178 with SMTP id p18mr12083411igs.27.1444091751883; Mon, 05 Oct 2015 17:35:51 -0700 (PDT) Received: by 10.79.66.68 with HTTP; Mon, 5 Oct 2015 17:35:51 -0700 (PDT) Date: Tue, 6 Oct 2015 09:35:51 +0900 Message-ID: Subject: [DISCUSS] About the details of JDK-8 support From: Tsuyoshi Ozawa To: "common-dev@hadoop.apache.org" , "hdfs-dev@hadoop.apache.org" , "mapreduce-dev@hadoop.apache.org" , "user@hadoop.apache.org" , dev , "yarn-dev@hadoop.apache.org" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi commiters and users of Hadoop stack, I=E2=80=99ll share the current status of JDK-8 support here. We can take a two-step approach to support JDK-8 - runtime-level support and source-level support. About runtime-level support, I=E2=80=99ve tested Hadoop stack with JDK-8 e= .g. MapReduce, Spark, Tez, Flink on YARN and HDFS for a few months. As long as I tested, it works well completely since JDK-8 doesn=E2=80=99t have any incompatibility at binary level. We can say Hadoop has supported JDK8 runtime already. Do you have any concern about this? I=E2=80=99ve not tested with HBase yet. I need help of HBase community. I think only problem about runtime is HADOOP-11364, default value of colntainer-killer of YARN. After fixing the issue, we can declare the support of JDK on Hadoop Wiki to make it clear for users. https://wiki.apache.org/hadoop/HadoopJavaVersions About source-level, however, we have one big problem - upgrading dependency of asm and cglib. We need to upgrade all libraries which depends on asm to support new byte code introduced in JDK8[1]. The dependencies which uses asm are jersey-server for compile and provide scope, and cglib for test scope(I checked it with mvn dependency:tree command). HADOOP-9613 is addressing the problem. One complex problem I=E2=80=99ve faced is Jersey depends on grizzly - to upgrade jersey to 1.19, which supports JDK8, we need to upgrade grizzly to 2.2.16 to use jersey-test-framework-grizzly2. I=E2=80=99d like to discuss which version w= e will target this change. Can we do this in branch-2? Should we take care of HADOOP-11656 and HADOOP-11993 at the same time? I=E2=80=99d also confirm whether HADOOP-11993 means to remove Jersey, which depends on asm, or not. I think we can collaborate with Yetus community here. Also, another simple problem is that source code cannot be compiled because javadoc format or variable identifier are illegal(e.g. HADOOP-12457, HADOOP-11875). I think this can be solved straightforwardly. Please share any concern I=E2=80=99ve missed. The opinions of users are als= o welcome :-) I'd like to go forward this step by step to make Hadoop user friendly. Thanks Steve, Sean, Allen, Robert, Brahma, Akira, Larry, Allen, Andrew Purtell, Tsz-wo Sze, Sethen and other guys for having lots works about JDK-8. Best regards, - Tsuyoshi [1] http://product.hubspot.com/blog/upgrading-to-java-8-at-scale [2] http://ispras.linuxbase.org/index.php/Java_API_Compliance_Checker