[ https://issues.apache.org/jira/browse/JCR-1066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Christoph Kiehl updated JCR-1066: --------------------------------- Attachment: patch_with_extendible_system_nodetypes.txt I'm not really happy with all those solutions. I'm still not sure which part of the core should be responsible for deciding which node types are system tree node types. But I think until now the best solution was to let SearchIndex be responsible for that. What I dislike with that approach is that every QueryNode now knows about the jcr system tree node types. Maybe it would be better to have a QueryNodeFactory which could return a PathQueryNode which already knows about the jcr system tree node types? Anyway - I attached a patch implementing the proposed changes. > Exclude system index for queries that restrict the result set to nodetypes > not availble in the "jcr:system" subtree > ------------------------------------------------------------------------------------------------------------------- > > Key: JCR-1066 > URL: https://issues.apache.org/jira/browse/JCR-1066 > Project: Jackrabbit > Issue Type: Improvement > Components: query > Reporter: Christoph Kiehl > Assignee: Christoph Kiehl > Priority: Minor > Fix For: 1.4 > > Attachments: patch.txt, patch_with_extendible_system_nodetypes.txt > > > We already have code that is able to decide whether the system index needs to > be included in a search or not (see JCR-967). If I execute a query like > "my:app//element(*, my:doc)" this will only search the workspace index. > Unfortunately this is slower than "//element(*, my:doc)", since the first > query can not be optimized as the second. In our case both queries return the > same result set because we use application specific node types. Even though > the second query includes the system index it is still faster than the first > one. But it could be even faster because it doesn't need to search the system > index because nodes with the application specific node type can't be added to > the "jcr:system"-tree and are therefore are added never to the system index > (am I right?). -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.