You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Ard Schrijvers (JIRA)" <ji...@apache.org> on 2007/08/27 13:01:44 UTC
[jira] Issue Comment Edited: (JCR-1064) Optimize queries that check
for the existence of a property
[ https://issues.apache.org/jira/browse/JCR-1064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12522978 ]
aschrijvers edited comment on JCR-1064 at 8/27/07 4:00 AM:
--------------------------------------------------------------
Marcel Reutegger wrote:
"One more thing, please"include a check in SearchIndex.doInit(), which compares the IndexFormatVersion of 'this' with the parent query handler (if there is one). They have to be the same, otherwise queries might return wrong results. "
The current patch is without this test in the parent query handler, because AFAICS everything works without this test (the parent handler does not need to have the PROPERTY_SET fieldname AFAIU ).
Futhermore, I added a boolean 'newWorkSpaceIndex' to the MultiIndex.java, since the initial index creation when none exists is done there. As Marcel suggested, SearchIndex.doInit() might be a better place for this index creation.
Do you think the current patch can be applied to the trunk?
was (Author: aschrijvers):
Marcel Reutegger wrote:
One more thing, please"include a check in SearchIndex.doInit(), which compares the IndexFormatVersion of 'this' with the parent query handler (if there is one). They have to be the same, otherwise queries might return wrong results. "
The current patch is without this test in the parent query handler, because AFAICS everything works without this test (the parent handler does not need to have the PROPERTY_SET fieldname AFAIU ).
Futhermore, I added a boolean 'newWorkSpaceIndex' to the MultiIndex.java, since the initial index creation when none exists is done there. As Marcel suggested, SearchIndex.doInit() might be a better place for this index creation.
Do you think the current patch can be applied to the trunk?
> Optimize queries that check for the existence of a property
> -----------------------------------------------------------
>
> Key: JCR-1064
> URL: https://issues.apache.org/jira/browse/JCR-1064
> Project: Jackrabbit
> Issue Type: Improvement
> Components: indexing
> Affects Versions: 1.3.1
> Reporter: Ard Schrijvers
> Priority: Minor
> Fix For: 1.4
>
> Attachments: JCR-1064-2.patch, JCR-1064-2.patch, JCR-1064-DEPR.patch
>
>
> //*[@mytext] is transformed into the org.apache.jackrabbit.core.query.lucene.MatchAllQuery, that through the MatchAllWeight uses the MatchAllScorer. The calculateDocFilter() in MatchAllScorer does not scale and becomes slow for growing number of nodes.
> Solution: lucene documents will get a new Field:
> public static final String PROPERTIES_SET = "_:PROPERTIES_SET".intern();
> that holds the available properties of this document.
> NOTE: Lucene indices build without this performance improvement should still work and fall back to the original implementation
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.