[ https://issues.apache.org/jira/browse/OAK-937?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16178972#comment-16178972 ]
Chetan Mehrotra commented on OAK-937: ------------------------------------- bq. Currently no way to disable traversal that way, if traversal cost is very low. To disable traversal, disable the counter index, so that traversal cost is very high; but this is global. Today I struggled forcing use of specific index in HybridIndex benchmark as somehow it was deciding to use traversal and log lots of warning that some index should be defined. I think if tags are provided then traversal index is not used at all. May be this is due to way its done currently where index implementations "opt out" from planning if tags are not matching. Would not it be better if QueryEngine does not consult indexes where matching tags are not found. Or at least for traversal if plan indicates its via tag then traversal is not used [~catholicon] [~tmueller] Thoughts? > Query engine index selection tweaks: shortcut and hint > ------------------------------------------------------ > > Key: OAK-937 > URL: https://issues.apache.org/jira/browse/OAK-937 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: query > Reporter: Alex Deparvu > Assignee: Thomas Mueller > Priority: Critical > Labels: candidate_oak_1_6, performance > Fix For: 1.8, 1.7.6 > > > This issue covers 2 different changes related to the way the QueryEngine > selects a query index: > Firstly there could be a way to end the index selection process early via a > known constant value: if an index returns a known value token (like -1000) > then the query engine would effectively stop iterating through the existing > index impls and use that index directly. > Secondly it would be nice to be able to specify a desired index (if one is > known to perform better) thus skipping the existing selection mechanism (cost > calculation and comparison). This could be done via certain query hints [0]. > [0] http://en.wikipedia.org/wiki/Hint_(SQL) -- This message was sent by Atlassian JIRA (v6.4.14#64029)