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-3213) Improve DocumentStore API
Date Thu, 13 Aug 2015 08:53:46 GMT

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

Julian Reschke commented on OAK-3213:
-------------------------------------

> If uncached documents are needed, would "maxCacheAge(0)" be enough, or would you add
a new method?

yes

> This doesn't really answer my question... What you you do exactly? I would try to avoid
adding parameters to find(), delete(), etc, because: if there is a default value, then you
would need to duplicate every method (find(), find(x), delete(), delete(x)). Or each caller
would have to explicitly set the value, which is annoying. And integer or long parameters
would be specially weird (find(0)?)

I'm not sure I understand the question. My feedback was about whether the caching information
applies to the query, or to the operation applied to the query. Maybe we need to understand
this first...

> Improve DocumentStore API
> -------------------------
>
>                 Key: OAK-3213
>                 URL: https://issues.apache.org/jira/browse/OAK-3213
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core, mongomk
>            Reporter: Thomas Mueller
>
> The current DocumentStore API needs to be improved to support new requirements, for example
OAK-3001, to avoid "instanceof XYZDocumentStore" in the DocumentNodeStore implementation,
to possibly improve performance, and to make it (more) future-proof.
> * Improved query functionality to support many constraints (currently, DocumentStore.query
only fromKey, toKey, and startValue).
> * Allow query results to not be ordered by key if not needed at the caller side.
> * Maybe support remove with constraints (for OAK-3001).
> * Define if only the whole document is needed, or just the key, or the key plus some
of its properties.
> * Define how old the result can be (is it allowed to return cached documents, how fresh
does the result need to be, is it allowed to return some cached and some new documents).
> * In case of version changes in the data model (additional collections, additional indexes),
allow to work with existing data, possibly without having to upgrade the store (maybe in read-only
mode).
> Documentation might need to be improved to cover the data model as well (list of collections,
list of indexes, possibility of additional indexes), and expected performance characteristics.
> There are some options questions:
> * Should we backport this change (to the 1.0 and / or 1.2 branch)?
> * Should we keep the current API (DocumentStore.query for example)?



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

Mime
View raw message