You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Michael Dürig (JIRA)" <ji...@apache.org> on 2018/04/23 12:19:00 UTC
[jira] [Commented] (OAK-7377) FileStore should allow multiple
implementations of GarbageCollector
[ https://issues.apache.org/jira/browse/OAK-7377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16448043#comment-16448043 ]
Michael Dürig commented on OAK-7377:
------------------------------------
This looks interesting but think we shouldn't stop here: I really like the approach of factoring GC into {{GarbageCollector}} and {{GarbageCollectionStrategy}}. This makes the zillions of dependencies explicit. Especially when looking at the constructor of {{GarbageCollector}} and at {{GarbageCollectionStrategy.Context}}. In a further step we should try to reduce these dependencies, slice up the involved interfaces and entities along its concerns stop exposing implementation details. E.g.
* {{GarbageCollectionStrategy.Context}} exposes accessors for various listeners. Can these be consolidated?
* {{Context.getSegmentCache}} should probably be an implementation details of a listener.
* {{Context#getSufficientMemory}} and {{Context.getFileStoreStats}} belong to different concerns.
> FileStore should allow multiple implementations of GarbageCollector
> -------------------------------------------------------------------
>
> Key: OAK-7377
> URL: https://issues.apache.org/jira/browse/OAK-7377
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: segment-tar
> Reporter: Francesco Mari
> Assignee: Francesco Mari
> Priority: Major
> Fix For: 1.10
>
>
> {{FileStore}} currently supports only one implementation of {{GarbageCollector}}, which is also defined as a private inner class in {{FileStore}}. It would be useful for experimentation if {{FileStore}} was able to accept multiple implementation of {{GarbageCollector}}.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)