You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-dev@jackrabbit.apache.org by "Thomas Mueller (JIRA)" <ji...@apache.org> on 2012/05/30 11:50:22 UTC

[jira] [Created] (OAK-120) MicroKernel API: specific retention policy of binaries

Thomas Mueller created OAK-120:
----------------------------------

             Summary: MicroKernel API: specific retention policy of binaries
                 Key: OAK-120
                 URL: https://issues.apache.org/jira/browse/OAK-120
             Project: Jackrabbit Oak
          Issue Type: Improvement
          Components: mk
            Reporter: Thomas Mueller


A MicroKernel implementation needs to remove unused binaries. As the API doesn't have a way to manually remove binaries (see also OAK-117), we need to specify a retention policy (the rules for which binaries can be removed and which ones need to be retained). The idea is that a MicroKernel implementation uses a garbage collection algorithm to remove unused binaries from time to time.

There are two classes of binaries that need to be retained: 

(A) binaries referenced within the nodes (as property values)
(B) temporary binaries (not [yet] referenced)

For (B) we could use the same retention policy as for revisions (keep temporary binaries as long as old revisions are kept). 

For (A) we need to specify the property value format, so the MicroKernel can retain binaries based on the content. One idea is that binary values should be kept if there is a node with property value ":blobId:<blobId>", or a node with an array property value [..., ":blobId:<blobId>",...].

I will create a patch.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Resolved] (OAK-120) MicroKernel API: specific retention policy of binaries

Posted by "Thomas Mueller (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OAK-120?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thomas Mueller resolved OAK-120.
--------------------------------

    Resolution: Fixed

Patch applied in revision 1344746
                
> MicroKernel API: specific retention policy of binaries
> ------------------------------------------------------
>
>                 Key: OAK-120
>                 URL: https://issues.apache.org/jira/browse/OAK-120
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: mk
>            Reporter: Thomas Mueller
>         Attachments: OAK-120.patch
>
>
> A MicroKernel implementation needs to remove unused binaries. As the API doesn't have a way to manually remove binaries (see also OAK-117), we need to specify a retention policy (the rules for which binaries can be removed and which ones need to be retained). The idea is that a MicroKernel implementation uses a garbage collection algorithm to remove unused binaries from time to time.
> There are two classes of binaries that need to be retained: 
> (A) binaries referenced within the nodes (as property values)
> (B) temporary binaries (not [yet] referenced)
> For (B) we could use the same retention policy as for revisions (keep temporary binaries as long as old revisions are kept). 
> For (A) we need to specify the property value format, so the MicroKernel can retain binaries based on the content. One idea is that binary values should be kept if there is a node with property value ":blobId:<blobId>", or a node with an array property value [..., ":blobId:<blobId>",...].
> I will create a patch.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (OAK-120) MicroKernel API: specific retention policy of binaries

Posted by "Thomas Mueller (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OAK-120?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thomas Mueller updated OAK-120:
-------------------------------

    Attachment: OAK-120.patch

Proposed patch
                
> MicroKernel API: specific retention policy of binaries
> ------------------------------------------------------
>
>                 Key: OAK-120
>                 URL: https://issues.apache.org/jira/browse/OAK-120
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: mk
>            Reporter: Thomas Mueller
>         Attachments: OAK-120.patch
>
>
> A MicroKernel implementation needs to remove unused binaries. As the API doesn't have a way to manually remove binaries (see also OAK-117), we need to specify a retention policy (the rules for which binaries can be removed and which ones need to be retained). The idea is that a MicroKernel implementation uses a garbage collection algorithm to remove unused binaries from time to time.
> There are two classes of binaries that need to be retained: 
> (A) binaries referenced within the nodes (as property values)
> (B) temporary binaries (not [yet] referenced)
> For (B) we could use the same retention policy as for revisions (keep temporary binaries as long as old revisions are kept). 
> For (A) we need to specify the property value format, so the MicroKernel can retain binaries based on the content. One idea is that binary values should be kept if there is a node with property value ":blobId:<blobId>", or a node with an array property value [..., ":blobId:<blobId>",...].
> I will create a patch.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira