You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@falcon.apache.org by "Balu Vellanki (JIRA)" <ji...@apache.org> on 2015/09/16 23:57:46 UTC

[jira] [Updated] (FALCON-1442) Contract of WorkflowEngine API broken

     [ https://issues.apache.org/jira/browse/FALCON-1442?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Balu Vellanki updated FALCON-1442:
----------------------------------
    Fix Version/s: 0.8

> Contract of WorkflowEngine API broken
> -------------------------------------
>
>                 Key: FALCON-1442
>                 URL: https://issues.apache.org/jira/browse/FALCON-1442
>             Project: Falcon
>          Issue Type: Bug
>            Reporter: Pallavi Rao
>            Assignee: Balu Vellanki
>             Fix For: 0.8
>
>
> The bug is related to patch for FALCON-1371. Sorry to rake this up after the patch has been committed. I completely missed a problem when I reviewed the patch. My bad. The patch introduces 4-5 methods such as the one below:
> {code}
> public abstract boolean isActive(Map<String, BundleJob> bundles) throws FalconException;
> {code}
> This totally breaks the contract of the WorkflowEngine. The Workflow Engine API is not supposed to expose the internal details (whether the entity is submitted as bundle or not). The worflow engine API should accept only entities known to Falcon (such as cluster, entity, lifecycle).
> The new methods cause problem with the native scheduler (which extends AbsractWorkflowEngine) as the native scheduler does not work with bundles.
> I understand that the reason it was introduced was to optimize the number of calls, but, I would rather have the cleaner separation :-)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)