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

Jukka Zitting commented on OAK-775:
-----------------------------------

An alternative, hybrid solution that would partially solve the problem without 
requiring us to persist events would be to only support user data for 
non-externel events.

AFAICT, most of the existing observation listeners that require the userId and 
other user data to be present already guard event processing with a 
{{!event.isExternal()}} check, so this approach would allow us to avoid most of 
the mentioned backwards compatibility issues.

To make this happen we'd need to hook the observation dispatcher back into 
{{NodeStoreBranch.merge()}} and have it dispatch events between the base and 
the head state of the branch together with information about the current user. 
Any other changes before and after such local commits would be reported without 
associated user information.
                
> Implement backward compatible observation
> -----------------------------------------
>
>                 Key: OAK-775
>                 URL: https://issues.apache.org/jira/browse/OAK-775
>             Project: Jackrabbit Oak
>          Issue Type: Sub-task
>          Components: core, jcr
>            Reporter: Michael Dürig
>            Assignee: Michael Dürig
>         Attachments: OAK-775-isExternal.patch, OAK-775.patch
>
>
> As [discussed | http://markmail.org/message/6bqycmx6vbq7m25c] we might want 
> look into implementing an alternative approach to observation, which trades 
> some scalability for improved backward compatibility. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to