[ 
https://issues.apache.org/jira/browse/JCR-3280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jukka Zitting updated JCR-3280:
-------------------------------

    Fix Version/s: 2.4.1

Nice! This seems important (and low-risk) enough to be included already in 
2.4.1, so I merged it to the 2.4 branch in revision 1306367.
                
> SQL2 joins on empty sets are not efficient
> ------------------------------------------
>
>                 Key: JCR-3280
>                 URL: https://issues.apache.org/jira/browse/JCR-3280
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>            Reporter: Alex Parvulescu
>            Assignee: Alex Parvulescu
>             Fix For: 2.4.1, 2.6
>
>         Attachments: JCR-3280.patch
>
>
> It seems that in the cases where the LEFT side of the join doesn't contain 
> any hits, the QueryEngine in unable to generate an efficient query for the 
> RIGHT side, so it basically select all the possible nodes.
> See this discussion as context [0].
> Example:
> LEFT side has hits, RIGHT side select is fast given some conditions: 
> > SQL2 JOIN LEFT SIDE took 18 ms. fetched 145 rows.
> > SQL2 JOIN RIGHT SIDE took 67 ms. fetched 0 rows.
> LEFT side has no hits, RIGHT select everything
> > SQL2 JOIN LEFT SIDE took 8 ms. fetched 0 rows.
> > SQL2 JOIN RIGHT SIDE took 845 ms. fetched 13055 rows.
> ...so it fetches 130k nodes and doesn't keep any of them.
> [0] 
> http://jackrabbit.510166.n4.nabble.com/Strange-Search-Performance-problem-with-OR-td4507121.html

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