2016-12-29 35 views
0

我正在尝试使用下面的命令重新运行失败的协调器,但每次它都是以一些随机的协调器动作重新启动,而不是先执行最早的协调器动作。Oozie协调员动作重新运行

Oozie的作业-rerun {统筹ID} -action 6374-6441

重新运行6404第一。我们如何才能使它从6374开始重新运行?

+0

请检查:OOZIE-2766。更新了答案。谢谢。 – YoungHobbit

回答

0

我想这不能被看这段代码在此刻实现:getActionsIds

Set<String> actions = new HashSet<String>(); 
    String[] list = scope.split(","); 
    for (String s : list) { 
     s = s.trim(); 
     // An action range is specified with two actions separated by '-' 
     if (s.contains("-")) { 
      String[] range = s.split("-"); 
     ............... 
      int start; 
      int end; 
      //Get the starting and ending action numbers 
      try { 
       start = Integer.parseInt(range[0].trim()); 
      } catch (NumberFormatException ne) { 
       throw new CommandException(ErrorCode.E0302, "could not parse " + range[0].trim() + "into an integer", ne); 
      } 
      try { 
       end = Integer.parseInt(range[1].trim()); 
      } catch (NumberFormatException ne) { 
       throw new CommandException(ErrorCode.E0302, "could not parse " + range[1].trim() + "into an integer", ne); 
      } 
     ............... 
      // Add the actionIds 
      for (int i = start; i <= end; i++) { 
       actions.add(jobId + "@" + i); 
      } 

编辑:这里是补丁沿着Apache Jira OOZIE-2766。谢谢。