jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christian Stocker (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (JCR-3280) SQL2 joins on empty sets are not efficient
Date Tue, 27 Mar 2012 17:46:31 GMT

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

Christian Stocker commented on JCR-3280:

you're my hero. the queries are now fast. 
Will report, if some issues pop up, but testsuite ran without problems
> 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
>         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


View raw message