jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Parvulescu (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (JCR-3089) javax.jcr.RepositoryException when a JOIN SQL2 query is send via Davex and has results
Date Thu, 06 Oct 2011 15:45:29 GMT

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

Alex Parvulescu commented on JCR-3089:
--------------------------------------

yes, I agree.

when I said test scenarios I was referring to, as you very well put it: "returns the expected
result".
the patch came with a few tests but It did not cover the 'outer join' scenario, as Lukas pointed
out.
the point of the comment was not to find different ways to test, but to find (and add) useful
tests. 

I may be wrong but before the patch there were no sql2 query tests. As sql2 would eventually
be the default query engine, I'd say welcome to anybody contributing to the test effort, even
if it's just scenarios.
...as you can see I'm a big fan of sql2 :)

                
> javax.jcr.RepositoryException when a JOIN SQL2 query is send via Davex and has results
> --------------------------------------------------------------------------------------
>
>                 Key: JCR-3089
>                 URL: https://issues.apache.org/jira/browse/JCR-3089
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-jcr-server, jackrabbit-spi2dav
>            Reporter: Lukas Kahwe Smith
>            Assignee: Alex Parvulescu
>             Fix For: 2.3.1
>
>         Attachments: JCR-3089-v2.patch, JCR-3089.patch
>
>
> see the following thread for details:
> http://www.mail-archive.com/users@jackrabbit.apache.org/msg17975.html
> assuming a data structure as follows:
> /foo [nt:unstructured]
> /foo/bar [nt:unstructured]
> /foo/bar@lala = huii (lala is string property of bar)
> /ding [nt:unstructured]
> /ding@dong = ##barUUID### (dong is a property of type "Reference")
> then the following code will throw an exception:
> DavexClient Client = new DavexClient(url);
> Repository repo = Client.getRepository();
> Credentials sc = new SimpleCredentials("admin","admin".toCharArray());
> Session s = repo.login(sc,workspace);
> QueryManager qm = s.getWorkspace().getQueryManager();
> String sql = "SELECT data.* FROM [nt:unstructured] AS data WHERE data.lala= 'huii'";
> sql = "SELECT * FROM [nt:unstructured] AS data INNER JOIN [nt:unstructured] AS referring
ON referring.[dong] = data.[jcr:uuid] WHERE data.lala = 'huii'";
> sql = "SELECT * FROM [nt:unstructured] AS data INNER JOIN [nt:unstructured] AS referring
ON ISDESCENDANTNODE(data, referring) WHERE data.lala = 'huii'";
> Query query = qm.createQuery(sql, Query.JCR_SQL2);
> QueryResult qr = query.execute();
> The first query works just fine and I can iterate over the result. Neither the second
nor the third query works.
> In both cases I end up with a javax.jcr.RepositoryException. Note the exception only
happens if the query returns results. Aka a join will work just fine if it matches no rows.

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