jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexander Klimetschek (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (JCR-3413) Query with CONTAINS OR LIKE expression returns malformed result
Date Mon, 20 Aug 2012 10:48:38 GMT

    [ 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

        

Mime
View raw message