[
https://issues.apache.org/jira/browse/OAK-3372?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14736614#comment-14736614
]
Vikas Saurabh commented on OAK-3372:
------------------------------------
bq. Those would then end up doing a lot of expensive extra diffs.
Yes, I thought about them but the 'lot of' qualifier comes only when there was
no local event before 2 (or more) background reads that generate those external
events. I felt that probability of such cases is fairly low - thereby reducing
the number of extra diffs that would be required.
In any case, we might want to do it only if journal based diff gets used
(document based stuff for now)...
> Collapsing external events in BackgroundObserver even before queue is full
> leads to JournalEntry not getting used
> -----------------------------------------------------------------------------------------------------------------
>
> Key: OAK-3372
> URL: https://issues.apache.org/jira/browse/OAK-3372
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: core
> Affects Versions: 1.3.5
> Reporter: Vikas Saurabh
> Labels: resilience
>
> BackgroundObserver currently merges external events if the last one in queue
> is also an external event. This leads to diff being done for a revision pair
> which is different from the ones pushed actively into cache during backgroud
> read (using JournalEntry) i.e. diff queries for {{diff("/a/b", rA, rC)}}
> while background read had pushed results of {{diff("/a/b", rA, rB)}} and
> {{diff("/a/b", rB, rC)}}.
> (cc [~mreutegg], [~egli], [~chetanm], [~mduerig])
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)