[ 
https://issues.apache.org/jira/browse/OAK-2464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vikas Saurabh updated OAK-2464:
-------------------------------
    Attachment: OAK-2464-Take2.patch
                OAK-2464-Sort order test case.patch

Attaching [take2|^OAK-2464-Take2.patch] with changes to optimally looking into 
doc child cache entry. Although, we've added a flag to mark cache entries which 
contain all children -- but, we could have avoided it as a check as 
{{hasNode==false}} along with the fact that {{readNode}} fetches cache entry 
with {{null}} name has the same effect. Yet, it feels like sane an interesting 
state to be maintained in cached entry.

Also, attaching a [test case|^OAK-2464-Sort order test case.patch] which 
asserts that the consulting fully loaded java-sorted node children cache entry 
works correctly even if doc store's sort order doesn't match java's natural 
ordering. BUT, there's a catch -- to do this, I had to expose 
{{MemoryDocumentStore}}'s {{asMap}} method as {{protected}}. Is that fine?

> Optimize read of known non-existing children
> --------------------------------------------
>
>                 Key: OAK-2464
>                 URL: https://issues.apache.org/jira/browse/OAK-2464
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>            Reporter: Vikas Saurabh
>            Priority: Minor
>         Attachments: 
> 0001-OAK-2464-Optimize-read-of-known-non-existing-childre.patch, 
> OAK-2464-Sort order test case.patch, OAK-2464-Take2.patch
>
>
> Reading a non-existing node always queries down to {{DocumentStore}}. 
> {{DocumentNodeStore}} should consider {{nodeChildrenCache}} to see if it 
> already knows about non-existence and avoid a look up into {{DocumentStore}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to