[ 
https://issues.apache.org/jira/browse/OOZIE-1319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13981803#comment-13981803
 ] 

Robert Kanter commented on OOZIE-1319:
--------------------------------------

First scenario: I understand now.  You are correct and this doesn't work 
properly because of the windowing.  It needs to take into account all of the 
backlogged actions.

Second scenario: I understand now.  The CoordMaterializationService doesn't run 
frequently enough against this coordinator job (and it's not supposed to) for 
what I did to work properly.  

{quote}Not true. What if at the same time, another coordinator job with "LIFO" 
execution order is running? Will you "SKIPPED" all its actions?{quote}
I was being stupid here :)
The query should take the coordinator job id as an argument.  Good catch; I was 
only trying this with one coord job, so I didn't run into this being an issue.


I think you might be right and I need to look into maybe doing something in 
CoordActionReadyXCommand or possibly both there and 
CoordMaterializeTransitionXCommand.  Whatever it is, it definitely needs to 
take into account if a materialization is in the future or in the past because 
the behavior should be different.  Materialized actions in the past should be 
SKIPPED (except for the latest one once we catch up or the job ends), while 
materialized actions in the future should not be SKIPPED because we haven't 
gotten there yet.  And when materializing in the past, the materialization 
window makes things trickier.  
Do you agree?

> "LAST_ONLY" in execution control for coordinator job still runs all the 
> actions
> -------------------------------------------------------------------------------
>
>                 Key: OOZIE-1319
>                 URL: https://issues.apache.org/jira/browse/OOZIE-1319
>             Project: Oozie
>          Issue Type: Bug
>            Reporter: Bowen Zhang
>            Assignee: Robert Kanter
>         Attachments: OOZIE-1319.patch, OOZIE-1319.patch, OOZIE-1319.patch, 
> oozie-1319.patch
>
>
> In execute() of CoordJobGetReadyActionsJPAExecutor.java, once we retrieve the 
> top item from a "LIFO" query result, we do not discard or delete the 
> remaining items from the result list. As a result, the next time execute() is 
> invoked, we will be retrieving the next item in line. Consequently, LAST_ONLY 
> strategy will also execute all ready actions for a given coordinator job, 
> making it no different than LIFO.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to