[ https://issues.apache.org/jira/browse/SLING-12266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17835676#comment-17835676 ]
Csaba Varga commented on SLING-12266: ------------------------------------- [~sseifert] : I have opened two PRs, as this will need changes to both sling-mock and sling-mock-oak. Looks like I will need to work a bit on test coverage before the build becomes green, but in the meantime, feel free to review the overall approach. > Cache initial repository state to improve JCR_OAK performance > ------------------------------------------------------------- > > Key: SLING-12266 > URL: https://issues.apache.org/jira/browse/SLING-12266 > Project: Sling > Issue Type: Improvement > Components: Testing > Affects Versions: Testing Sling Mock 3.4.18 > Reporter: Csaba Varga > Priority: Minor > > A lot of effort goes into preparing an Oak Mock repository from scratch: node > types need to be registered, indexes need to be created, and all this happens > over several commits. None of this work depends on the test case itself, so > it will always result in the exact same repository state. We could take the > root NodeState from the first repository we build, then build subsequent > repositories on top of it, avoiding most of the redundant work. Commits can > be relatively expensive even in memory, so each one we avoid can save a lot > of time in the long term. > > This would require extending the contract between Testing Sling Mock and the > ResourceResolverTypeAdapters, to add optional "make snapshot" and "build repo > from snapshot" operations. For adapters that don't support them, we would > keep rebuilding things from scratch. -- This message was sent by Atlassian Jira (v8.20.10#820010)