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 "Julian Reschke (JIRA)" <ji...@apache.org> on 2015/08/06 15:06:04 UTC

[jira] [Created] (OAK-3189) CLONE - MissingLastRevSeeker non MongoDS may fail with OOM

Julian Reschke created OAK-3189:
-----------------------------------

             Summary: CLONE - MissingLastRevSeeker non MongoDS may fail with OOM
                 Key: OAK-3189
                 URL: https://issues.apache.org/jira/browse/OAK-3189
             Project: Jackrabbit Oak
          Issue Type: Task
          Components: core
    Affects Versions: 1.1.0
            Reporter: Julian Reschke
            Assignee: Julian Reschke
             Fix For: 1.1.2


This code currently has a hardwired optimization for MongoDB (returning an Iterable over a DBCursor). For all other persistences, a java List of all matching NodeDocuments will be built.

I see two ways to address this:

1) Generalize the Mongo approach, where a query to the persistence can return a live iterator, or

2) Stick with the public DS API, but leverage paging (get N nodes at once, and then keep calling query() again with the right starting ID).

2) sounds simpler, but is not transactional; [~mreutegg] would that be sufficient?



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