You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Jukka Zitting (JIRA)" <ji...@apache.org> on 2012/05/27 11:47:23 UTC

[jira] [Updated] (JCR-3298) jackrabbit-core RepositoryChecker.fix() can fail with OOM

     [ https://issues.apache.org/jira/browse/JCR-3298?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jukka Zitting updated JCR-3298:
-------------------------------

    Fix Version/s:     (was: 2.6)
                   2.5
    
> jackrabbit-core RepositoryChecker.fix() can fail with OOM
> ---------------------------------------------------------
>
>                 Key: JCR-3298
>                 URL: https://issues.apache.org/jira/browse/JCR-3298
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 2.2.11, 2.4, 2.6
>            Reporter: Julian Reschke
>            Assignee: Julian Reschke
>             Fix For: 2.2.12, 2.4.2, 2.5
>
>         Attachments: JCR-3298.patch
>
>
> It appears that people are (ab)using the RepositoryChecker to fix the versioning information in their repo after *removing* the version storage. (It would be good to understand why this happens, but anyway...)
> The RepositoryChecker, as currently implemented, walks the repository, collects changes, and, when done, submits them as a single repository ChangeLog.
> This will not work if the number of affected nodes is big.
> Unfortunately, the checker is currently designed to do things to two steps; we could of course stop collecting changes after a threshold, then apply what we have, then re-run the checker. That would probably work, but would be slow on huge repositories.
> The best alternative I see is to add a checkAndFix() method that is allowed to apply ChangeLogs to the repository on the run (and of course to use that variant from within RepositoryImpl.doVersionRecovery()). 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira