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

Alexander Klimetschek commented on JCR-3413:
--------------------------------------------

What exactly is failing and what are the results?

(It would be optimal if you'd put the raw query, the content structure and the 
actual vs. unexpected results in the description and attach the full test case 
as a file)
                
> Query with CONTAINS OR LIKE expression returns malformed result
> ---------------------------------------------------------------
>
>                 Key: JCR-3413
>                 URL: https://issues.apache.org/jira/browse/JCR-3413
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>            Reporter: Dmitry Kuleshov
>
> Seems that JCR-SQL queries with CONTAINS OR LIKE expressions return malformed 
> results. 
> The behavior is like AND operator is used to evaluate the results, though OR 
> operator is mentioned in the query.
> To simplify The following test is failing:
>    public void testLikeOrContainsClauses() throws Exception
>    {
>       Node foo = testRootNode.addNode("foo");
>       foo.setProperty("mytext", new String[]{"the quick brown fox jumps over 
> the lazy dog."});
>       Node foo2 = testRootNode.addNode("foo2");
>       foo2.setProperty("mytext", new String[]{"the quick brown dinosaur jumps 
> over the lazy dog."});
>       testRootNode.save();
>       String sql =
>          "SELECT * FROM nt:unstructured WHERE contains(., 'fox') " + "AND 
> jcr:path LIKE '" + testRoot + "/foo2'";
>       Query q = superuser.getWorkspace().getQueryManager().createQuery(sql, 
> Query.SQL);
>       QueryResult result = q.execute();
>       checkResult(result, 0);
>       sql = "SELECT * FROM nt:unstructured WHERE contains(., 'fox') ";
>       q = superuser.getWorkspace().getQueryManager().createQuery(sql, 
> Query.SQL);
>       result = q.execute();
>       checkResult(result, 1);
>       sql = "SELECT * FROM nt:unstructured WHERE jcr:path LIKE '" + testRoot 
> + "/foo2'";
>       q = superuser.getWorkspace().getQueryManager().createQuery(sql, 
> Query.SQL);
>       result = q.execute();
>       checkResult(result, 1);
>       sql = "SELECT * FROM nt:unstructured WHERE contains(., 'fox') " + "OR 
> jcr:path LIKE '" + testRoot + "/foo2'";
>       q = superuser.getWorkspace().getQueryManager().createQuery(sql, 
> Query.SQL);
>       result = q.execute();
>       checkResult(result, 2);
>    }

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to