Details

    • Type: Sub-task Sub-task
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 2.1.1-beta
    • Fix Version/s: 2.2.0
    • Component/s: mrv1, mrv2
    • Labels:
      None
    • Target Version/s:

      Description

      mapred.lib.TotalOrderPartitioner in branch-1 has these two methods:

      public static String getPartitionFile(JobConf job)
      public static void setPartitionFile(JobConf job, Path p)
      

      In branch-2, mapred.lib.TotalOrderPartitioner is now a subclass of mapred.lib.TotalOrderPartitioner, from which it inherits the similar methods:

      public static String getPartitionFile(Configuration conf)
      public static void setPartitionFile(Configuration conf, Path p)
      

      This means that any code that does either of the following:

      TotalOrderPartitioner.setPartitionFile(new JobConf(), new Path("/"));
      String str = TotalOrderPartitioner.getPartitionFile(new JobConf());
      

      will not be binary compatible (that is, if compiled against branch-1, it will throw a NoSuchMethodError if run against branch-2).

      1. MAPREDUCE-5529.patch
        1 kB
        Robert Kanter
      2. MAPREDUCE-5529.patch
        2 kB
        Robert Kanter
      3. MAPREDUCE-5529_branch_2.patch
        2 kB
        Arun C Murthy

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Robert Kanter
            Reporter:
            Robert Kanter
          • Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development