Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-10030

[JDK8] Erasure of PoolMap#remove(K,V) conflicts with superclass method

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Trivial
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.98.0
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      On JDK 8, the erasure of PoolMap#remove(K,V) conflicts with superclass method remove(Object,Object).

      1. 10030.patch
        2 kB
        Andrew Purtell

        Activity

        Hide
        stack stack added a comment -

        +1

        Show
        stack stack added a comment - +1
        Hide
        hadoopqa Hadoop QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12615780/10030.patch
        against trunk revision .

        +1 @author. The patch does not contain any @author tags.

        -1 tests included. The patch doesn't appear to include any new or modified tests.
        Please justify why no new tests are needed for this patch.
        Also please list what manual steps were performed to verify this patch.

        +1 hadoop1.0. The patch compiles against the hadoop 1.0 profile.

        +1 hadoop2.0. The patch compiles against the hadoop 2.0 profile.

        +1 javadoc. The javadoc tool did not generate any warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 lineLengths. The patch does not introduce lines longer than 100

        -1 site. The patch appears to cause mvn site goal to fail.

        +1 core tests. The patch passed unit tests in .

        Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//testReport/
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
        Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//console

        This message is automatically generated.

        Show
        hadoopqa Hadoop QA added a comment - -1 overall . Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12615780/10030.patch against trunk revision . +1 @author . The patch does not contain any @author tags. -1 tests included . The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. +1 hadoop1.0 . The patch compiles against the hadoop 1.0 profile. +1 hadoop2.0 . The patch compiles against the hadoop 2.0 profile. +1 javadoc . The javadoc tool did not generate any warning messages. +1 javac . The applied patch does not increase the total number of javac compiler warnings. +1 findbugs . The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit . The applied patch does not increase the total number of release audit warnings. +1 lineLengths . The patch does not introduce lines longer than 100 -1 site . The patch appears to cause mvn site goal to fail. +1 core tests . The patch passed unit tests in . Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/7993//console This message is automatically generated.
        Hide
        lhofhansl Lars Hofhansl added a comment -

        Getting started on JDK8, great!
        +1 on patch. It might be time to retire poolMap as well. It's used in HTablePool and for TCP connection pooling.

        Show
        lhofhansl Lars Hofhansl added a comment - Getting started on JDK8, great! +1 on patch. It might be time to retire poolMap as well. It's used in HTablePool and for TCP connection pooling.
        Hide
        apurtell Andrew Purtell added a comment -

        Committed to trunk. Thanks for the acks Stack and Lars.

        Getting started on JDK8, great!

        Yes

        Show
        apurtell Andrew Purtell added a comment - Committed to trunk. Thanks for the acks Stack and Lars. Getting started on JDK8, great! Yes
        Hide
        eric@apache.org Eric Charles added a comment -

        See also HBASE-10327

        Show
        eric@apache.org Eric Charles added a comment - See also HBASE-10327
        Hide
        eric@apache.org Eric Charles added a comment -

        It works fine with jdk8 via mvn cli, but gives compilation issue in eclipse (not the first time eclipse disagrees with mvn-cli).
        Only me?

        Show
        eric@apache.org Eric Charles added a comment - It works fine with jdk8 via mvn cli, but gives compilation issue in eclipse (not the first time eclipse disagrees with mvn-cli). Only me?
        Hide
        apurtell Andrew Purtell added a comment -

        Possibly. Eclipse on JDK8 worked for me. I can check that again when I have a free moment.

        Show
        apurtell Andrew Purtell added a comment - Possibly. Eclipse on JDK8 worked for me. I can check that again when I have a free moment.
        Hide
        eric@apache.org Eric Charles added a comment -

        finally fails also via the maven command line if I clean before compiling
        $ mvn -v
        Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 14:51:28+0100)
        Maven home: /opt/apache-maven-3.0.5
        Java version: 1.8.0-ea, vendor: Oracle Corporation
        Java home: /opt/jdk1.8.0-b117/jre
        Default locale: en_US, platform encoding: UTF-8
        OS name: "linux", version: "3.12.0-4-generic", arch: "amd64", family: "unix"

        Show
        eric@apache.org Eric Charles added a comment - finally fails also via the maven command line if I clean before compiling $ mvn -v Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 14:51:28+0100) Maven home: /opt/apache-maven-3.0.5 Java version: 1.8.0-ea, vendor: Oracle Corporation Java home: /opt/jdk1.8.0-b117/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.12.0-4-generic", arch: "amd64", family: "unix"
        Hide
        apurtell Andrew Purtell added a comment - - edited

        Java version: 1.8.0-ea, vendor: Oracle Corporation

        Ok, I am sorry, I have not adequately explained what we did here. We deprecated the old method but did not remove it. Therefore at some point we can kill the conflicting method, I guess we can do this in trunk now that 0.98 is branched, and then we can compile with JDK 8.
        Edit: Also, above, I forgot I have this removal applied privately to the branch I use for JDK 8 stuff. Sorry again.

        Show
        apurtell Andrew Purtell added a comment - - edited Java version: 1.8.0-ea, vendor: Oracle Corporation Ok, I am sorry, I have not adequately explained what we did here. We deprecated the old method but did not remove it. Therefore at some point we can kill the conflicting method, I guess we can do this in trunk now that 0.98 is branched, and then we can compile with JDK 8. Edit: Also, above, I forgot I have this removal applied privately to the branch I use for JDK 8 stuff. Sorry again.
        Hide
        apurtell Andrew Purtell added a comment -

        An alternative for trunk is we can just kill PoolMap as Lars Hofhansl says above.

        Show
        apurtell Andrew Purtell added a comment - An alternative for trunk is we can just kill PoolMap as Lars Hofhansl says above.
        Hide
        eric@apache.org Eric Charles added a comment -

        HBASE-10327.patch in HBASE-10327 is the removal of that deprecated method which is not used in trunk.
        I think you could apply HBASE-10327.patch and it would be ok
        (Would be good to compile with jdk8 because hbase runs fine with jdk8)

        Show
        eric@apache.org Eric Charles added a comment - HBASE-10327 .patch in HBASE-10327 is the removal of that deprecated method which is not used in trunk. I think you could apply HBASE-10327 .patch and it would be ok (Would be good to compile with jdk8 because hbase runs fine with jdk8)
        Hide
        apurtell Andrew Purtell added a comment -

        I think you could apply HBASE-10327.patch and it would be ok

        Thanks for the reminder. Let's repurpose that one.

        Show
        apurtell Andrew Purtell added a comment - I think you could apply HBASE-10327 .patch and it would be ok Thanks for the reminder. Let's repurpose that one.
        Hide
        lars_francke Lars Francke added a comment -

        This issue was closed as part of a bulk closing operation on 2015-11-20. All issues that have been resolved and where all fixVersions have been released have been closed (following discussions on the mailing list).

        Show
        lars_francke Lars Francke added a comment - This issue was closed as part of a bulk closing operation on 2015-11-20. All issues that have been resolved and where all fixVersions have been released have been closed (following discussions on the mailing list).

          People

          • Assignee:
            apurtell Andrew Purtell
            Reporter:
            apurtell Andrew Purtell
          • Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development