[ 
https://issues.apache.org/jira/browse/JCR-1688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12615927#action_12615927
 ] 

Michael Dürig commented on JCR-1688:
------------------------------------

Another query which creates a bad parse tree:

SELECT * FROM nt:base WHERE jcr:path LIKE '/%' AND NOT jcr:path LIKE '/%/%'

results in

+ Select properties: *
  + PathQueryNode
    + LocationStepQueryNode:  NodeTest={} Descendants=false Index=NONE
    + LocationStepQueryNode:  NodeTest=* Descendants=false Index=NONE
      + AndQueryNode
        + NotQueryNode

Note the AndQueryNode having a single operand and the NotQueryNode having no 
operand at all.

> Query parser builds invalid parse tree
> --------------------------------------
>
>                 Key: JCR-1688
>                 URL: https://issues.apache.org/jira/browse/JCR-1688
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: jackrabbit-spi-commons
>            Reporter: Michael Dürig
>            Priority: Minor
>
> Calling org.apache.jackrabbit.spi.commons.query.QueryParser.parse on 
> SELECT prop1 FROM nt:unstructured WHERE prop1 IS NOT NULL ORDER BY prop1 ASC 
> results in the following parse tree
> + Select properties: {}prop1
>  + PathQueryNode
>    + LocationStepQueryNode:  NodeTest=* Descendants=true Index=NONE
>      + RelationQueryNode: Op: NOT NULL [EMAIL PROTECTED] Type=STRING Value=%
>      + NodeTypeQueryNode:  Prop={http://www.jcp.org/jcr/1.0}primaryType 
> Value={http://www.jcp.org/jcr/nt/1.0}unstructured
>  + OrderQueryNode
>    {}prop1 asc=true
> The RelationQueryNode should not have a second operand since the NOT NULL 
> operator is unary.

-- 
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