[
https://issues.apache.org/jira/browse/SLING-12266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17835343#comment-17835343
]
Stefan Seifert commented on SLING-12266:
----------------------------------------
sounds like an idea worth to experiment with - we have to make sure that still
for each test run a completely clean repository is prepared. i have not much
experience with the related details of the in-memory oak we are using. if you
can come up with a PR with your idea i would be happy to check it further.
> 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)