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 "Marcel Reutegger (JIRA)" <ji...@apache.org> on 2016/09/27 11:36:20 UTC

[jira] [Resolved] (OAK-4850) List checkpoints

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

Marcel Reutegger resolved OAK-4850.
-----------------------------------
       Resolution: Fixed
    Fix Version/s: 1.5.11

Thanks for the review.

Applied a slightly modified patch with additional JavaDoc as suggested by Michael: http://svn.apache.org/r1762453

> List checkpoints
> ----------------
>
>                 Key: OAK-4850
>                 URL: https://issues.apache.org/jira/browse/OAK-4850
>             Project: Jackrabbit Oak
>          Issue Type: New Feature
>          Components: core, documentmk, segmentmk
>            Reporter: Marcel Reutegger
>            Assignee: Marcel Reutegger
>            Priority: Minor
>             Fix For: 1.6, 1.5.11
>
>         Attachments: OAK-4850.patch
>
>
> Introduce a new method on {{NodeStore}} that lists the currently valid checkpoints:
> {code}
>     /**
>      * Returns all currently valid checkpoints.
>      *
>      * @return valid checkpoints.
>      */
>     @Nonnull
>     Iterable<String> checkpoints();
> {code}
> The NodeStore interface already has methods to create and release a checkpoint, as well as retrieving the root state for a checkpoint, but it is currently not possible to _list_ checkpoints. Using the checkpoint facility as designed right now can lead to a situation where a checkpoint is orphaned. That is, some code created a checkpoint but was unable to store the reference because the system e.g. crashed. Orphaned checkpoints can affect garbage collection because they prevent it from cleaning up old data. Right now, this requires users to run tools like oak-run to get rid of those checkpoints.
> As suggested in OAK-4826, client code should be able to automatically clean up unused checkpoints. This requires a method to list existing checkpoints.



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