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

Amit Jain commented on OAK-9765:
--------------------------------

{quote}do you have an idea of why that condition is there? To me, it seems 
wrong: even if there are no more blobs referenced, the GC should succeed.
{quote}
This condition prevents the wiping out the blob store in a live system if no 
blob references are reported (which could be due to exceptions). No blob 
references may only be present in tests or some special conditions. If these 
are relevant to you then can directly use the DataStore#delete methods.

MarkSweepGarbageCollector is of use when a blob can be referenced by multiple 
nodes.

> Garbage Collection does not remove blobs file from the file system
> ------------------------------------------------------------------
>
>                 Key: OAK-9765
>                 URL: https://issues.apache.org/jira/browse/OAK-9765
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>    Affects Versions: 1.42.0
>            Reporter: Piercarlo Slavazza
>            Priority: Blocker
>
> Using a NodeStore backed by a FileStore, with a blob store of type 
> FileBlobStore:
>  # (having configured GC with estimation {_}disabled{_})
>  # a file is added as a blob
>  # then the node where the blob is references is _removed_
>  # then the GC is run
>  # expected behaviour: the node is no more accessible, _and_ no chunk of the 
> blob is present on the file system
>  # actual behaviour: the node is no more accessible BUT all the chunks are 
> still present on the file system
> Steps to reproduce: execute the (really tiny) main in 
> [https://github.com/PiercarloSlavazza/oak-garbage-collection-test/] 
> (instructions in the readme)



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to