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 2016/08/02 16:37:20 UTC

[jira] [Resolved] (FALCON-2107) NPE in FalconWorkflowEngine::isActive() method when FalconJPAService is not used

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

Balu Vellanki resolved FALCON-2107.
-----------------------------------
       Resolution: Fixed
    Fix Version/s: trunk

Issue resolved by pull request 254
[https://github.com/apache/falcon/pull/254]

> NPE in FalconWorkflowEngine::isActive() method when FalconJPAService is not used
> --------------------------------------------------------------------------------
>
>                 Key: FALCON-2107
>                 URL: https://issues.apache.org/jira/browse/FALCON-2107
>             Project: Falcon
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Balu Vellanki
>            Assignee: Balu Vellanki
>            Priority: Blocker
>             Fix For: trunk, 0.10
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> When attempting any schedulable entity actions, Falcon is attempting to do getNativeWorkflowEngine().isActive(entity)  -- which throws an NPE when FalconJPAService is not enabled in startup.properties. 
> {code}
> falcon:DELETE//entities/delete/process/rawEmailIngestProcess] ~ Unable to reach workflow engine for deletion or deletion failed (AbstractEntityManager:287)
> java.lang.NullPointerException
>        at org.apache.falcon.service.FalconJPAService.getEntityManager(FalconJPAService.java:168)
>        at org.apache.falcon.state.store.jdbc.JDBCStateStore.getEntityManager(JDBCStateStore.java:495)
>        at org.apache.falcon.state.store.jdbc.JDBCStateStore.getEntityBean(JDBCStateStore.java:113)
>        at org.apache.falcon.state.store.jdbc.JDBCStateStore.getEntityByKey(JDBCStateStore.java:101)
>        at org.apache.falcon.state.store.jdbc.JDBCStateStore.entityExists(JDBCStateStore.java:126)
>        at org.apache.falcon.workflow.engine.FalconWorkflowEngine.isActive(FalconWorkflowEngine.java:113)
>        at org.apache.falcon.workflow.WorkflowEngineFactory.getWorkflowEngine(WorkflowEngineFactory.java:54)
>        at org.apache.falcon.resource.AbstractEntityManager.getWorkflowEngine(AbstractEntityManager.java:1325)
>        at org.apache.falcon.resource.AbstractEntityManager.delete(AbstractEntityManager.java:274)
>        at org.apache.falcon.resource.AbstractEntityManager.delete(AbstractEntityManager.java:257)
> {code}
> Confirmed with [~pallavi.rao] that the optimal solution is to catch NPE and return false in the isActive(...) method.



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