jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Julian Reschke (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-5430) Provide an extension point in DocumentNodeStore Journal support
Date Wed, 11 Jul 2018 09:45:00 GMT

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

Julian Reschke commented on OAK-5430:

trunk: [r1778235|http://svn.apache.org/r1778235]

> Provide an extension point in DocumentNodeStore Journal support
> ---------------------------------------------------------------
>                 Key: OAK-5430
>                 URL: https://issues.apache.org/jira/browse/OAK-5430
>             Project: Jackrabbit Oak
>          Issue Type: Technical task
>          Components: documentmk
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>            Priority: Major
>             Fix For: 1.5.18, 1.6.0
>         Attachments: OAK-5430-v1.diff
> As discussed in OAK-4808 B1 I would like to expose an extension point in form of SPI
in DocumentNodeStore Journal handling. 
> Each component which needs to add a custom property to {{JournalEntry}} would provide
a {{JournalPropertyService}}. This service would provide a {{JournalPropertyBuilder}} which
would be used to accumulate the {{JournalProperty}}
> # For background write - {{JournalProperty}} would be read from {{CommitInfo}} and would
be added to the builder. Upon background write cycle the builder would provide a string representation
of the builder state which would be save as a property in {{JournalEntry}}
> # For background read - {{DocumentNodeStore}} would create builder for each service and
would update them from string property value which are read from the JournalEntry
> {{DocumentNodeStore}} would lookup all {{JournalPropertyService}} via {{JournalPropertyServiceTracker}}
and construct a {{JournalPropertyHandler}} which would manage the builder state

This message was sent by Atlassian JIRA

View raw message