Failing copy from xquery query leads to failing whole job
---------------------------------------------------------

                 Key: ODE-531
                 URL: https://issues.apache.org/jira/browse/ODE-531
             Project: ODE
          Issue Type: Bug
    Affects Versions: 1.3
            Reporter: Rafal Rusin
             Fix For: 1.3


I did 
      <copy>
               <from variable="myVar" part="TestPart">
                 <query 
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xquery1.0">
                    let $j := 10 div 0
                    return concat("abc", $j)
                 </query>
               </from>
               <to variable="myVar" part="TestPart"/>
             </copy>

After it, I got:

02...@13:27:54 ERROR (JacobVPU.java:463)     - Method "run" in class 
"org.apache.ode.bpel.runtime.ASSIGN" threw an unexpected exception.
org.apache.ode.bpel.runtime.InvalidProcessException: Expression Failed: 
{OXPath10Expression null}
        at 
org.apache.ode.bpel.runtime.ExprEvaluationContextImpl.evaluateQuery(ExprEvaluationContextImpl.java:108)
        at org.apache.ode.bpel.runtime.ASSIGN.evalQuery(ASSIGN.java:619)
        at org.apache.ode.bpel.runtime.ASSIGN.evalRValue(ASSIGN.java:187)
        at org.apache.ode.bpel.runtime.ASSIGN.copy(ASSIGN.java:360)
        at org.apache.ode.bpel.runtime.ASSIGN.run(ASSIGN.java:81)
        at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at 
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)
        at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
        at 
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:854)
        at 
org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeNewInstance(PartnerLinkMyRoleImpl.java:206)
        at 
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:220)
        at 
org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:392)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:391)
        at 
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:387)
        at org.apache.ode.il.MockScheduler.doExecute(MockScheduler.java:265)
        at org.apache.ode.il.MockScheduler.access$000(MockScheduler.java:46)
        at org.apache.ode.il.MockScheduler$3$1.call(MockScheduler.java:110)
        at 
org.apache.ode.il.MockScheduler.execTransaction(MockScheduler.java:134)
        at org.apache.ode.il.MockScheduler$4.call(MockScheduler.java:151)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
        at java.util.concurrent.FutureTask.run(FutureTask.java:123)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
Caused by: org.apache.ode.bpel.explang.EvaluationException: Error while 
executing an XQuery expression: net.sf.saxon.trans.XPathException: Integer 
division by zero
        at 
org.apache.ode.bpel.elang.xquery10.runtime.XQuery10ExpressionRuntime.evaluate(XQuery10ExpressionRuntime.java:435)
        at 
org.apache.ode.bpel.elang.xquery10.runtime.XQuery10ExpressionRuntime.evaluate(XQuery10ExpressionRuntime.java:154)
        at 
org.apache.ode.bpel.elang.xquery10.runtime.XQuery10ExpressionRuntime.evaluateNode(XQuery10ExpressionRuntime.java:219)
        at 
org.apache.ode.bpel.runtime.ExpressionLanguageRuntimeRegistry.evaluateNode(ExpressionLanguageRuntimeRegistry.java:84)
        at 
org.apache.ode.bpel.runtime.ExprEvaluationContextImpl.evaluateQuery(ExprEvaluationContextImpl.java:102)
        ... 25 more
Caused by: net.sf.saxon.trans.XPathException: Integer division by zero
        at net.sf.saxon.value.Int64Value.div(Int64Value.java:575)
        at 
net.sf.saxon.expr.Calculator$IntegerDivInteger.compute(Calculator.java:781)
        at 
net.sf.saxon.expr.ArithmeticExpression.evaluateItem(ArithmeticExpression.java:292)
        at net.sf.saxon.functions.Concat.evaluateItem(Concat.java:38)
        at net.sf.saxon.expr.Expression.iterate(Expression.java:370)
        at 
net.sf.saxon.query.XQueryExpression.iterator(XQueryExpression.java:307)
        at 
net.sf.saxon.xqj.SaxonXQPreparedExpression.executeQuery(SaxonXQPreparedExpression.java:87)
        at 
org.apache.ode.bpel.elang.xquery10.runtime.XQuery10ExpressionRuntime.evaluate(XQuery10ExpressionRuntime.java:402)
        ... 29 more


which lead to failing the whole job. 
Instead, there ought to be 'selectionFailure' fault raised. 


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to