Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-11003

org.apache.hadoop.util.Shell should not take a dependency on binaries being deployed when used as a library

VotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • None
    • None
    • util
    • None
    • Windows

    • windows, winutils

    Description

      HIVE-7845 shows how an exception is being thrown when org.apache.hadoop.util.Shell is being used as a library, not as part of a deployed Hadoop environment.

      13:20:00 [ERROR pool-2-thread-4 Shell.getWinUtilsPath] Failed to locate the winutils binary in the hadoop binary path
      java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
                     at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:324)
                     at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:339)
                     at org.apache.hadoop.util.Shell.<clinit>(Shell.java:332)
                     at org.apache.hadoop.hive.conf.HiveConf$ConfVars.findHadoopBinary(HiveConf.java:918)
                     at org.apache.hadoop.hive.conf.HiveConf$ConfVars.<clinit>(HiveConf.java:228)
      

      There are similar native dependencies (eg. NativeIO and hadoop.dll) that handle lack of binaries with fallback to non-native code paths.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            stevel@apache.org Steve Loughran
            rusanu Remus Rusanu
            Votes:
            3 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment