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] [Comment Edited] (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=15817232#comment-15817232
] 

Julian Reschke edited comment on OAK-5430 at 7/11/18 9:44 AM:
--------------------------------------------------------------

Thanks Marcel and Vikas for the review. Done the suggested changes (pom, JournalPropertyServiceTracker
-> JournalPropertyServiceTracker, check for duplicate builders

bq. Also, I just noticed a minor difference JournalEntry#fillExternalChanges. Earlier change
set wasn't being utilized outside of paritial result loop. It does now. I think it's correct
behavior in the patch - but just wanted to bring it up to be noticed.

Yes this was missed out in changes done for ChangeSet support. So refactored the code to have
consistent reading from a given JournalEntry


was (Author: chetanm):
Thanks Marcel and Vikas for the review. Done the suggested changes (pom, JournalPropertyServiceTracker
-> JournalPropertyServiceTracker, check for duplicate builders

bq. Also, I just noticed a minor difference JournalEntry#fillExternalChanges. Earlier change
set wasn't being utilized outside of paritial result loop. It does now. I think it's correct
behavior in the patch - but just wanted to bring it up to be noticed.

Yes this was missed out in changes done for ChangeSet support. So reafactored the code to
have consistent reading from a given JournalEntry

> 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
(v7.6.3#76005)

Mime
View raw message