jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Egli (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-3001) Simplify JournalGarbageCollector using a dedicated timestamp property
Date Mon, 27 Jul 2015 15:31:04 GMT

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

Stefan Egli commented on OAK-3001:
----------------------------------

[~mreutegg], [~reschke], [~chetanm], how should we proceed here. To me the simplest change
would be to change the current {{query}} method to look as follows:
{code}
    public <T extends Document> List<T> query(Collection<T> collection,
                                              String fromKey,
                                              String toKey,
                                              String indexedProperty,
                                              long startValue,
                                              long endValue,
                                              int limit) {
{code}
where {{startValue==Long.MIN_VALUE}} and/or {{endValue==Long.MAX_VALUE}} could be used to
basically disable that part of the condition.

> Simplify JournalGarbageCollector using a dedicated timestamp property
> ---------------------------------------------------------------------
>
>                 Key: OAK-3001
>                 URL: https://issues.apache.org/jira/browse/OAK-3001
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core, mongomk
>            Reporter: Stefan Egli
>            Assignee: Stefan Egli
>            Priority: Critical
>              Labels: scalability
>             Fix For: 1.2.4, 1.3.4
>
>
> 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)

Mime
View raw message