[ 
https://issues.apache.org/jira/browse/OAK-2408?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14303523#comment-14303523
 ] 

Michael Dürig commented on OAK-2408:
------------------------------------

I just pushed https://github.com/mduerig/jackrabbit-oak/commits/OAK-2408-2. The 
first couple of commits are the same as the ones on the OAK-2408 branch. 
Afterwards I introduced a way to rewrite records while keeping them {{equals}}. 
Finally I added tracking of records per segment. 

With this we should already be able to rewrite records into new segments. Such 
rewritten segments are {{equals}} to the original one. What's missing is a way 
to rewrite segments. Rewriting a segment should rewrite all its records that 
are in use and write a 'proxy segment' before removing the old segment. The 
proxy segment would be used as a fall back when someone refers to the old 
segment id and would allow forwarding to the rewritten records. 

> Investigate ways to make revision gc more precise 
> --------------------------------------------------
>
>                 Key: OAK-2408
>                 URL: https://issues.apache.org/jira/browse/OAK-2408
>             Project: Jackrabbit Oak
>          Issue Type: Task
>          Components: segmentmk
>            Reporter: Michael Dürig
>            Assignee: Michael Dürig
>              Labels: gc
>             Fix For: 1.2, 1.0.12
>
>
> Current approaches to revision garbage collection tend to be too conservative 
> (too little space reclaimed, e.g. OAK-2045) or too aggressive (removing 
> segments still being used, e.g. OAK-2384). 
> This issue is to explore ways to make revision gc on TarMk more precise. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to