Stefan Egli created OAK-3001:
--------------------------------

             Summary: Simplify JournalGarbageCollector using a dedicated 
timestamp property
                 Key: OAK-3001
                 URL: https://issues.apache.org/jira/browse/OAK-3001
             Project: Jackrabbit Oak
          Issue Type: Sub-task
          Components: core, mongomk
            Reporter: Stefan Egli
            Priority: Critical
             Fix For: 1.3.1, 1.2.3


This subtask is about spawning out a 
[comment|https://issues.apache.org/jira/browse/OAK-2829?focusedCommentId=14585733&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14585733]
 from [~chetanm] re JournalGC:
{quote}
Further looking at JournalGarbageCollector ... it would be simpler if you 
record the journal entry timestamp as an attribute in JournalEntry document and 
then you can delete all the entries which are older than some time by a simple 
query. This would avoid fetching all the entries to be deleted on the Oak side
{quote}
and a corresponding 
[reply|https://issues.apache.org/jira/browse/OAK-2829?focusedCommentId=14585870&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14585870]
 from myself:
{quote}
Re querying by timestamp: that would indeed be simpler. With the current set of 
DocumentStore API however, I believe this is not possible. But: 
[DocumentStore.query|https://github.com/apache/jackrabbit-oak/blob/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentStore.java#L127]
 comes quite close: it would probably just require the opposite of that method 
too: 
{code}
    public <T extends Document> List<T> query(Collection<T> collection,
                                              String fromKey,
                                              String toKey,
                                              String indexedProperty,
                                              long endValue,
                                              int limit) {
{code}
.. or what about generalizing this method to have both a {{startValue}} and an 
{{endValue}} - with {{-1}} indicating when one of them is not used?
{quote}



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

Reply via email to