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

Rohini Palaniswamy commented on OOZIE-1819:
-------------------------------------------

Elaborating a little more as Puru said my previous comment was not clear. 
Basically requesting change to be done as below

{code}

private void storeToDB(CoordinatorActionBean actionBean, String actionXml) 
throws Exception {
        LOG.debug("In storeToDB() coord action id = " + actionBean.getId() + ", 
size of actionXml = "
                + actionXml.length());
        actionBean.setActionXml(actionXml);

        insertList.add(actionBean);
        writeActionSlaRegistration(actionXml, actionBean);
    }

@Override
    public void performWrites() throws CommandException {
        try {
            
BatchQueryExecutor.getInstance().executeBatchInsertUpdateDelete(insertList, 
updateList, null);
            // register the partition related dependencies of actions
            for (JsonBean actionBean : insertList) {
                if (actionBean instanceof CoordinatorActionBean) {
                    
                    CoordinatorActionBean coordAction = (CoordinatorActionBean) 
actionBean;
                    if (EventHandlerService.isEnabled()) {
                        CoordinatorXCommand.generateEvent(coordAction, 
coordJob.getUser(), coordJob.getAppName(), null);
                    }
                    queue(new CoordActionNotificationXCommand(coordAction));
                    // Delay for input check = (nominal time - now)
                    long checkDelay = coordAction.getNominalTime().getTime() - 
new Date().getTime();
                    checkDelay = checkDelay < 0 ? 0 : checkDelay;
                    queue(new 
CoordActionInputCheckXCommand(coordAction.getId(), coordAction.getJobId()), 
checkDelay);
                    if (coordAction.getPushMissingDependencies() != null) {
                        // TODO: Delay in catchup mode?
                        queue(new 
CoordPushDependencyCheckXCommand(coordAction.getId(), true), 100);
                    }
                }
            }
        }
        catch (JPAExecutorException jex) {
            throw new CommandException(jex);
        }
    }
{code}

> Avoid early queueing of CoordActionInputCheckXCommand
> -----------------------------------------------------
>
>                 Key: OOZIE-1819
>                 URL: https://issues.apache.org/jira/browse/OOZIE-1819
>             Project: Oozie
>          Issue Type: Bug
>            Reporter: Shwetha G S
>            Assignee: Shwetha G S
>             Fix For: trunk
>
>         Attachments: OOZIE-1819.patch, OOZIE-1819.patch, OOZIE-1819.patch
>
>
> Currently, when coord action is materialised, CoordActionInputCheckXCommand 
> is queued immediately. If the action is materialised long before the nominal 
> time, this unnecessarily keeps executing CoordActionInputCheckXCommand and 
> re-queues till nominal time. Instead,  CoordActionInputCheckXCommand can be 
> queued with delay = (nominal time - now)



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

Reply via email to