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

Alex Parvulescu commented on JCR-3219:
--------------------------------------

hi
are you sure it is not working properly _now_? :)

let's look at the input data: we have data1 and data2 (data2 has the property 
"value").

By doing a self inner join with no condition you'll get:
row: data1 data1
row: data1 data2
row: data2 data1
row: data2 data2

now we'll add the condition (value = 42) =>
row: data2 data1
row: data2 data2

you can check this by adding the other selector to the output:
  System.out.println("Found: "+n.getPath("data")); 
should in fact be 
  System.out.println("Found: data=" + n.getPath("data") + ", second " + 
n.getPath("second"));

thoughts?
                
> regression with self-join queries
> ---------------------------------
>
>                 Key: JCR-3219
>                 URL: https://issues.apache.org/jira/browse/JCR-3219
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-jcr-server, query, sql
>            Reporter: David Buchmann
>            Priority: Minor
>         Attachments: JCR-3219-test.patch
>
>
> affects version 2.3.7
> running a query that joins on the same node type against 2.3.6 returns 1 
> result, while running it against 2.3.7 returns the same node 3 times. if i 
> join two different node types, i get only one result row...
> to reproduce: in my repository, i have 2 unstructured nodes with the same 
> jcr:mimeType and one of them having the field zeronumber with value 0.
>             QueryManager qm = s.getWorkspace().getQueryManager();
>             Query q = qm.createQuery("SELECT data.zeronumber FROM 
> [nt:unstructured] AS data INNER JOIN [nt:unstructured] AS second ON 
> data.[jcr:mimeType] = second.[jcr:mimeType] WHERE data.zeronumber = 0", 
> Query.JCR_JQOM);
>             QueryResult r = q.execute();
>             RowIterator i = r.getRows();
>             while (i.hasNext()) {
>                 Row n = i.nextRow();
>                 System.out.println(n.getPath("data"));
>             }
> jukka suspects this could be introduced by JCR-3198

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