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 "Alex Parvulescu (JIRA)" <ji...@apache.org> on 2015/08/25 17:36:47 UTC

[jira] [Updated] (OAK-3294) Read-only live FileStore implementation

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

Alex Parvulescu updated OAK-3294:
---------------------------------
    Attachment: OAK-3294.patch

[proposed patch|^OAK-3294.patch].

I had a lot of issues getting the RO store to be as real-time as possible, meaning being able to open the tar file that's being currently written to. Depending on the size, the RO store would lag behind quite a bit. After a few back and forth the solution I went with was to try to recreate this tar file similarly to a recover operation and pass this into the RO store. This intermediary file is called _data0000Xa.tar.ro.bak_ and can be considered garbage once the RO store is closed. Again this only applies to files that are open by a writer in a different process (identified by not having a proper tar index).

I turned a few components into _Closeable_s, I think this is useful for resource cleanup, but I'm not convinced on the current overall approach we have when it comes to IOExceptions. I see very few finally blocks, so if something fails what's the best recovery option? To further this point I wanter to use _closeQuietly_ on the writer too, but maybe I'm taking this too far. We could eventually continue this on a different issue.

TODO: look into automatically removing the potential garbage file.

I didn't start running all the IT tests, I'll do that next.

[~mduerig], [~frm] feedback appreciated!

> Read-only live FileStore implementation
> ---------------------------------------
>
>                 Key: OAK-3294
>                 URL: https://issues.apache.org/jira/browse/OAK-3294
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: segmentmk
>            Reporter: Alex Parvulescu
>            Assignee: Alex Parvulescu
>            Priority: Minor
>         Attachments: OAK-3294.patch
>
>
> Having a read-only FileStore able to work on a running (live) FileStore would open the door for some interesting data collection & debugging tools that no longer need the repository to be shut down.



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