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)