You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Vikas Saurabh (JIRA)" <ji...@apache.org> on 2019/06/21 19:43:00 UTC

[jira] [Created] (OAK-8437) depth and ancestor constraints are not adjusted when path transformation takes place

Vikas Saurabh created OAK-8437:
----------------------------------

             Summary: depth and ancestor constraints are not adjusted when path transformation takes place
                 Key: OAK-8437
                 URL: https://issues.apache.org/jira/browse/OAK-8437
             Project: Jackrabbit Oak
          Issue Type: Bug
          Components: lucene
            Reporter: Vikas Saurabh
            Assignee: Vikas Saurabh


An index such as:
{noformat}
+ /oak:index/ntbaseIdx
   - evaluatePathRestrictions = true
   + indexRules/nt:base/properties
      + prop
         - propertyIndex = true
{noformat}

attempts to answer a query such as:
{noformat}
/jcr:root/path/element(*, some:Type)[par/@prop='bar']
{noformat}

but current this query is planned by this index as
{noformat}
prop:bar :depth:[2 TO 2] :ancestors:/path
{noformat}
which won't get this result. This is because the depth constraint should've been modified to {{:depth:\[3 TO 3]}}
Do note that even {{:ancestors}} constraint is wrong (too lenient).
So, the correct plan should've looked like:
{noformat}
prop:bar :depth:[3 TO 3] :ancestors:/path/prop
{noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)