[
https://issues.apache.org/jira/browse/OAK-5626?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15867610#comment-15867610
]
Stefan Egli commented on OAK-5626:
----------------------------------
{{Clock.Simple}} is just a wrapper around {{System.currentTimeMillis()}} - so
it will have the same performance. If performance is a concern, then I guess
{{Clock.Fast}} would be the way to go. Question that comes to mind is: that
{{Clock.Fast}} starts a background thread - so adds some load from that pov
too. Are we already using {{Clock.Fast}} on a running system or would that add
this background thread now? (default seems one {{System.currentTimeMillis()}}
every 10 millis - which might add a few percentage CPU load too)
> ChangeProcessor doesn't reset 'blocking' flag when items from queue gets
> removed and commit-rate-limiter is null
> ----------------------------------------------------------------------------------------------------------------
>
> Key: OAK-5626
> URL: https://issues.apache.org/jira/browse/OAK-5626
> Project: Jackrabbit Oak
> Issue Type: Bug
> Components: core
> Reporter: Vikas Saurabh
> Assignee: Vikas Saurabh
> Priority: Minor
> Attachments: OAK-5626.patch
>
>
> Following up on conversation at \[0]:
> {{ChangeProcessor#queueSizeChanged}} \[1] sets blocking flag to true if queue
> size is hit (or beyond). The warning "Revision queue is full. Further
> revisions will be compacted." is logged only when it *wasn't* blocking.
> BUT, when queue empties, blocking flag is reset inside if block for
> commitRateLimiter!=null. That means an event chain like:
> # qFull
> # log warn
> # qEmpties
> # qFull
> won't log the WARN after step(4)
> \[0]: http://markmail.org/message/hgein5g3ohyjhw5n
> \[1]:
> https://github.com/apache/jackrabbit-oak/blob/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ChangeProcessor.java#L307
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)