[ 
https://issues.apache.org/jira/browse/OAK-3547?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14971191#comment-14971191
 ] 

Ian Boston edited comment on OAK-3547 at 10/24/15 7:27 AM:
-----------------------------------------------------------

https://github.com/apache/jackrabbit-oak/compare/trunk...ieb:OAK-3547?expand=1

Currently the patch makes no change, but puts the current behaviour behind an 
interface, and provides 2 implementations. A SimpleDirectoryListing that uses 
the current implementation and a GenerationalDirectoryListing that writes a new 
version of the node every time the listing is changed, as well as checking 
length and UUID of the file when the listing opens. A Checksum is not 
implemented, as that looked too expensive to achieve given the blob structure. 
The lifecycle of the GenerationalDirectoryListing is also wrong at present, as 
the length will have been calculated before writing is complete.


was (Author: ianeboston):

https://github.com/apache/jackrabbit-oak/compare/trunk...ieb:OAK-3547?expand=1

Currently the patch makes no change, but puts the current behaviour behind an 
interface, and provides 2 implementations. A SimpleDirectoryListing that uses 
the current implementation and a GenerationalDirectoryListing that writes a new 
version of the node every time the listing is changed, as well as checking 
length and UUID of the file when the listing opens. A Checksum is not 
implemented, as that looked too expensive to achieve given the blob structure.

> Improve ability of the OakDirectory to recover from unexpected file errors
> --------------------------------------------------------------------------
>
>                 Key: OAK-3547
>                 URL: https://issues.apache.org/jira/browse/OAK-3547
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: lucene
>    Affects Versions: 1.4
>            Reporter: Ian Boston
>
> Currently if the OakDirectory finds that a file is missing or in some way 
> damaged, and exception is thrown which impacts all queries using that index, 
> at times making the index unavailable. This improvement aims to make the 
> OakDirectory recover to a previously ok state by storing which files were 
> involved in previous states, and giving the code some way of checking if they 
> are valid.



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

Reply via email to