jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Julian Reschke (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-3001) Simplify JournalGarbageCollector using a dedicated timestamp property
Date Wed, 03 Feb 2016 11:23:40 GMT

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

Julian Reschke commented on OAK-3001:

[~egli] would supporting a range for the indexed property fix *this* problem? In which case
I'm +1 on doing this minor surgery (yet another DS method)  if we will actually do the promised
API work quickly after, and get rid of the old query signatures then.

(Note that RDBDocumentStore already has the functionality in the meantime; it's just not available
through a public API; we could special case with {{instanceof}} but then would run into issues
with code that wraps DocumentStore implementations. 

> 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
>            Priority: Critical
>              Labels: scalability
>             Fix For: 1.6
> 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

View raw message