[
https://issues.apache.org/jira/browse/OAK-2341?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14251817#comment-14251817
]
Thomas Mueller commented on OAK-2341:
-------------------------------------
The patches all look good to me. There is maybe one or two formatting issue
that looks strange, but maybe I misread it
(0004-OAK-2341-approximately-scale-property-index-cost-usi.patch, the last part
of ContentMirrorStoreStrategy).
I will merge them next year and test them on my machine before committing.
Maybe I will do some more refactoring (some methods are now quite long / have
many parameters), but that's just cosmetic.
> Use approx counters property index costs even when path restriction is
> available
> --------------------------------------------------------------------------------
>
> Key: OAK-2341
> URL: https://issues.apache.org/jira/browse/OAK-2341
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Affects Versions: 1.1.3
> Reporter: Vikas Saurabh
> Assignee: Thomas Mueller
> Fix For: 1.2, 1.1.4
>
> Attachments:
> 0001-OAK-2341-A-bit-of-refactor-to-make-root-NodeState-av.patch,
> 0002-OAK-2341-Refactor-ContentMirrorStoreStategy-count-a-.patch,
> 0003-OAK-2341-Add-test-case-for-ContentMirrorStoreStrateg.patch,
> 0004-OAK-2341-approximately-scale-property-index-cost-usi.patch,
> 0005-OAK-2341-Missed-updating-expectation-of-PropertyInde.patch
>
>
> Currently, cost calculation of property index follows following psuedo-code:
> * For "is not null" case:
> ## return {{entryCount}} || approximate counted indexed nodes
> ## if above doesn't work out, do a partial traversal and return extrapolated
> cost
> * For property in (a, b, ...) or property==value case:
> ## return {{entryCount}}/{{keyCount}} || approximate counted index nodes for
> each key (a, b, etc)
> ## if above doesn't work out, do a partial traversal over whole indexed tree
> or sub-tree (if path restriction is available) and return extrapolated cost
> approx counter on index is used only if {{entryCount}} property is missing in
> index definition node.
> The issue in step 1 in both cases is that it doesn't consider path
> restriction if it's given in the query.
> The only place where path restriction is being considered is in case2->step2.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)