2016-12-29 34 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。謝謝。