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

[jira] [Updated] (FALCON-1402) Validate cmd throws NPE when source cluster and any one of target cluster doesn't have overlapping dates

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

Ajay Yadava updated FALCON-1402:
--------------------------------
    Fix Version/s: trunk

> Validate cmd throws NPE when source cluster and any one of target cluster doesn't have overlapping dates
> --------------------------------------------------------------------------------------------------------
>
>                 Key: FALCON-1402
>                 URL: https://issues.apache.org/jira/browse/FALCON-1402
>             Project: Falcon
>          Issue Type: Bug
>          Components: oozie
>    Affects Versions: 0.7
>            Reporter: pavan kumar kolamuri
>            Assignee: pavan kumar kolamuri
>             Fix For: trunk
>
>         Attachments: FALCON-1402.patch
>
>
> Validate command throws NPE when source cluster and any one of target cluster doesn't have overlapping dates
> {noformat}
> 2015-07-21 11:47:07,129 ERROR - [765336519@qtp-302155142-3 - 819ca63a-c312-4c6c-829f-b0319eaf2e54:databus:POST//entities/validate/feed] ~ Validation failed 
> for entity (feed) (AbstractEntityManager:230)
> java.lang.NullPointerException
>         at org.apache.falcon.oozie.OozieBundleBuilder.build(OozieBundleBuilder.java:82)
>         at org.apache.falcon.workflow.engine.OozieWorkflowEngine.dryRun(OozieWorkflowEngine.java:193)
>         at org.apache.falcon.resource.AbstractEntityManager.validate(AbstractEntityManager.java:221)
>         at org.apache.falcon.resource.SchedulableEntityManager.validate(SchedulableEntityManager.java:151)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:497)
>         at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
>         at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchPr
> ovider.java:185)
>         at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
>         at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
>         at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
>         at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
>         at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
>         at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
>         at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469)
>         at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400)
>         at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349)
>         at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339)
>         at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)
>         at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537)
>         at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:699)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221)
>         at org.apache.falcon.security.FalconAuthorizationFilter.doFilter(FalconAuthorizationFilter.java:106)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
>         at org.apache.falcon.security.FalconAuthenticationFilter$2.doFilter(FalconAuthenticationFilter.java:184)
>         at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:572)
>         at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:542)
>         at org.apache.falcon.security.FalconAuthenticationFilter.doFilter(FalconAuthenticationFilter.java:193)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
>         at org.apache.falcon.security.FalconAuditFilter.doFilter(FalconAuditFilter.java:64)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
>         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
>         at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>         at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>         at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:767)
>         at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>         at org.mortbay.jetty.Server.handle(Server.java:326)
>         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>         at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)
>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
>         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>         at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
>         at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
> 2015-07-21 11:47:07,131 ERROR - [765336519@qtp-302155142-3 - 819ca63a-c312-4c6c-829f-b0319eaf2e54:databus:POST//entities/validate/feed] ~ Action failed: Bad Request
> Error: null (FalconWebException:68)
> {noformat}
> Feed definition
> {noformat}
> <?xml version="1.0" encoding="UTF-8"?>
> <!--
>   Licensed to the Apache Software Foundation (ASF) under one
>   or more contributor license agreements.  See the NOTICE file
>   distributed with this work for additional information
>   regarding copyright ownership.  The ASF licenses this file
>   to you under the Apache License, Version 2.0 (the
>   "License"); you may not use this file except in compliance
>   with the License.  You may obtain a copy of the License at
>       http://www.apache.org/licenses/LICENSE-2.0
>   Unless required by applicable law or agreed to in writing, software
>   distributed under the License is distributed on an "AS IS" BASIS,
>   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
>   See the License for the specific language governing permissions and
>   limitations under the License.
>   -->
> <feed description="clicks log" name="input" xmlns="uri:falcon:feed:0.1">
>     <frequency>minutes(1)</frequency>
>     <timezone>UTC</timezone>
>     <clusters>
>         <cluster name="local1" type="source">
>             <validity start="2015-07-20T01:00Z" end="2015-07-21T00:00Z"/>
>             <retention limit="days(35)" action="delete"/>
>             <!-- Limit can be in Time or Instances 100, Action ENUM DELETE,ARCHIVE -->
>         </cluster>
>         <cluster name="local2" type="target">
>             <validity start="2015-05-18T00:00Z" end="2015-07-20T00:00Z"/>
>             <retention limit="days(25)" action="delete"/>
>             <!-- Limit can be in Time or Instances 100, Action ENUM DELETE,ARCHIVE -->
>             <locations>
>                 <location type="data" path="/falcon/test/output/${YEAR}/${MONTH}/${DAY}/${HOUR}"/>
>             </locations>
>         </cluster>
>     </clusters>
>     <locations>
>         <location type="data" path="/falcon/test/input/${YEAR}/${MONTH}/${DAY}/${HOUR}"/>
>         <location type="stats" path="/projects/falcon/clicksStats"/>
>         <location type="meta" path="/projects/falcon/clicksMetaData"/>
>     </locations>
>     <ACL owner="user" group="group" permission="0x755"/>
>     <schema location="/schema/clicks" provider="protobuf"/>
> </feed>
> {noformat}



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