Julian Sedding created OAK-12069:
------------------------------------

             Summary: reduce SegmentPreloader memory usage
                 Key: OAK-12069
                 URL: https://issues.apache.org/jira/browse/OAK-12069
             Project: Jackrabbit Oak
          Issue Type: Improvement
          Components: segment-tar
            Reporter: Julian Sedding
            Assignee: Julian Sedding


The {{SegmentPreloader}} builds a cache containing the segment graph of each 
archive. For large segmentstores, this can consume a lot of memory.

An attempt to solve this by deduplicating in-memory UUIDs (OAK-12005), 
leveraging the fact that all UUIDs are already in-memory due to the archive's 
indexes being cached, proved too slow on large segmentstores to be practically 
useful. Therefore, this change is reverted with OAK-12068.

Instead, the usage of the segment graphs in the {{SegmentPreloader}} will be 
replaced by reading segment references directly from the segment-data. This 
will cause more I/O in the form of additional reads from the 
{{{}PersistentCache{}}}, however, these reads are not in the critical path and 
should be fast (e.g. local disk). In comparison to remote segment loads, these 
should have no significant impact.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to