Accumulo
  1. Accumulo
  2. ACCUMULO-2831

HDFS Configuration classloader not correct when using VFSClassLoader

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.6.0
    • Fix Version/s: 1.5.2, 1.6.1, 1.7.0
    • Component/s: start
    • Labels:

      Description

      When using hdfs to load jars with the VFS classloader, the Hadoop FileSystem object is created before the VFS classloader. The FileSystem object and associated Configuration object are cached by the DFS Client and use the thread context classloader at the time of creation, which is not the VFS class loader. This leads to Accumulo classes not being found when they are loaded via the Configuration object, such as when WAL recovery is performed. The WAL is read using a SequenceFile$Reader object, which tries to load the Key and Value classes for the SequenceFile using WritableName.getClass(String, Configuration)

        Activity

        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Resolved Resolved
        36m 4s 1 Dave Marion 22/May/14 02:15
        Dave Marion made changes -
        Fix Version/s 1.5.2 [ 12326272 ]
        Fix Version/s 1.7.0 [ 12324607 ]
        Dave Marion made changes -
        Field Original Value New Value
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        ASF subversion and git services added a comment -

        Commit db1b63c4cb9f2f1bfdb45765b9c79f84105d601a in accumulo's branch refs/heads/master from Dave Marion
        [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=db1b63c ]

        ACCUMULO-2831: Reset the classloader on the Hadoop Configuration objects that were created before the VFS ClassLoader was created.

        Show
        ASF subversion and git services added a comment - Commit db1b63c4cb9f2f1bfdb45765b9c79f84105d601a in accumulo's branch refs/heads/master from Dave Marion [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=db1b63c ] ACCUMULO-2831 : Reset the classloader on the Hadoop Configuration objects that were created before the VFS ClassLoader was created.
        Hide
        ASF subversion and git services added a comment -

        Commit db1b63c4cb9f2f1bfdb45765b9c79f84105d601a in accumulo's branch refs/heads/1.6.1-SNAPSHOT from Dave Marion
        [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=db1b63c ]

        ACCUMULO-2831: Reset the classloader on the Hadoop Configuration objects that were created before the VFS ClassLoader was created.

        Show
        ASF subversion and git services added a comment - Commit db1b63c4cb9f2f1bfdb45765b9c79f84105d601a in accumulo's branch refs/heads/1.6.1-SNAPSHOT from Dave Marion [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=db1b63c ] ACCUMULO-2831 : Reset the classloader on the Hadoop Configuration objects that were created before the VFS ClassLoader was created.
        Dave Marion created issue -

          People

          • Assignee:
            Dave Marion
            Reporter:
            Dave Marion
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development