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

CompositeInputFormat is unable to parse InputFormat classes with names containing '_' or '$'

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

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.17.0
    • 0.19.0
    • None
    • None
    • Reviewed

    Description

      If I try to set "mapred.join.expr" with my own InputFormat class that contains a '_' character (or if my InputFormat class is a static inner class), I get the following exception thrown when I run my MapReduce job:

      Exception in thread "main" java.io.IOException: Unexpected: 95
      at org.apache.hadoop.mapred.join.Parser$Lexer.next(Parser.java:161)
      at org.apache.hadoop.mapred.join.Parser.parse(Parser.java:479)
      at org.apache.hadoop.mapred.join.CompositeInputFormat.setFormat(CompositeInputFormat.java:77)
      at org.apache.hadoop.mapred.join.CompositeInputFormat.validateInput(CompositeInputFormat.java:118)
      at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:705)
      at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:973)

      If the class contains '$' the exception reads Unexpected: 95.

      Attachments

        1. 3705-0.patch
          9 kB
          Christopher Douglas
        2. HADOOP-3705.patch
          0.5 kB
          Edward J. Yoon

        Activity

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

          People

            cdouglas Christopher Douglas
            jly Jingkei Ly
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment