I thought that might be the case.

It got in via the UpdateBuilder.  I have added code to the UpdateBuilder
and checks elsewhere in the builder package to try and ensure that it does
not happen again.

Claude

On Tue, Dec 26, 2017 at 5:34 PM, Andy Seaborne <a...@apache.org> wrote:

>
>
> On 26/12/17 14:24, Claude Warren wrote:
>
>> if this method does not have to account for null node values then
>>
>> node.isVariable() would suffice.
>>
>> On Tue, Dec 26, 2017 at 1:46 PM, Claude Warren <cla...@xenei.com> wrote:
>>
>> QueryTripleIterator at line 87 calls Var.isVar(node) which throws an
>>> exception if the node is a Node_Variable.
>>>
>>
> QueryIterTriplePattern?
> Or some class you have created?
>
> QueryIterTriplePattern is used for solving a single step of a basic graph
> pattern.
>
> Var is a subclass of Node_Variable.  ARQ works with Var, not Node_Variable.
>
> The exception captures an internal error condition.
>
> How did it get in?
>
>  But based code following line 87
>>> I think that Node_Variable should be accepted.
>>>
>>
>     Andy
>
>
>>> {noformat}
>>>          private static Node substitute(Node node, Binding binding)
>>>          {
>>>              if ( Var.isVar(node) ) // <---- line 87
>>>              {
>>>                  Node x = binding.get(Var.alloc(node)) ;
>>>                  if ( x != null )
>>>                      return x ;
>>>              }
>>>              return node ;
>>>          }
>>> {noformat}
>>>
>>> I think that perhaps the if check should  be
>>>
>>> if (node instanceof Node_Variable)
>>>
>>> As with a lot of this code I am not certain and want to verify before I
>>> change anything.
>>>
>>> Claude
>>> --
>>> I like: Like Like - The likeliest place on the web
>>> <http://like-like.xenei.com>
>>> LinkedIn: http://www.linkedin.com/in/claudewarren
>>>
>>>
>>
>>
>>


-- 
I like: Like Like - The likeliest place on the web
<http://like-like.xenei.com>
LinkedIn: http://www.linkedin.com/in/claudewarren

Reply via email to