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)