In various scenarios (node repair, search indexing,...) the whole node tree has to be traversed to perform actions on the nodes. In current implementations the whole content inventory ends up in the caches (FirstLevelNodeCache and NodeFactory).
This leads to memory issues when a lot of nodes are present, although only the currently processed node and its ancestors are relevant to the traversal actions.
A centralized node traversal service that takes care of flushing the respective caches after a node and its children have been processed should be able to address this issue and avoid code duplication in tasks that require traversal in the first place
Jira issue originally created by user @nezaniel:
In various scenarios (node repair, search indexing,...) the whole node tree has to be traversed to perform actions on the nodes. In current implementations the whole content inventory ends up in the caches (FirstLevelNodeCache and NodeFactory).
This leads to memory issues when a lot of nodes are present, although only the currently processed node and its ancestors are relevant to the traversal actions.
A centralized node traversal service that takes care of flushing the respective caches after a node and its children have been processed should be able to address this issue and avoid code duplication in tasks that require traversal in the first place
Jira-URL: https://jira.neos.io/browse/NEOS-1853