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

Martin Pekár commented on JENA-2020:
------------------------------------

But in the query plan, {{OpExistence}} is the second last operator just before 
{{OpBGP}}. If I do nothing but immediately call {{exec()}} with the sub 
operator of {{OpExistence}} (which is a {{OpBGP}}), then I should get the same 
result as if {{OpExistence}} wasn't in the query plan. I have debugged both the 
concretise code and the {{OpExistence}} itself, and everything seems to be as 
it should be. The shorthand if-statement is also true in all the cases it 
should be, so the last call to {{exec()}} should return a result just as if the 
{{OpExistence}} operator wasn't present.

It also seems weird the iterator hasn't been used and returns that warning. The 
{{StageGenerator}} should make use of it.

> Purpose of EvaluatorSimple and OpExecutor
> -----------------------------------------
>
>                 Key: JENA-2020
>                 URL: https://issues.apache.org/jira/browse/JENA-2020
>             Project: Apache Jena
>          Issue Type: Question
>          Components: ARQ
>            Reporter: Martin Pekár
>            Priority: Major
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> I am in the midst of adding a new operator in the transformation of OpBGP. I 
> am now trying to implement the execution of the operator in the query plan, 
> but I am now slightly confused about the purpose of EvaluatorSimple used in 
> EvaluatorDispatch and OpExecutor. At the moment, it seems like they are doing 
> the same thing. The difference seems to be that OpExecutor stores the result 
> of applying the operator in a QueryIterator, whereas EvaluatorSimple stores 
> its result in a Table of bindings.
> Can someone give me an explanation of purposes of these two classes and how 
> they should be used?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to