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

Ivan Kelly commented on BOOKKEEPER-531:
---------------------------------------

The change looks good. Work is submitted to the OrderedSafeExecutor based on 
the topic rather than based on the CacheSegment. This could mean two threads 
accessing the CacheSegment at a time (in reality probably not as 
OrderedSafeExecutor uses the same hashing I think). It would be better to 
ensure explicitly that each CacheSegment is only used by one executor.

"cfg.getMaximumCacheSize() / numCacheWorkers" exists in a number of places, 
even though you calculate it straight away on construction.
                
> Cache thread should wait until old entries are collected
> --------------------------------------------------------
>
>                 Key: BOOKKEEPER-531
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-531
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: hedwig-server
>            Reporter: Sijie Guo
>            Assignee: Sijie Guo
>             Fix For: 4.2.0
>
>         Attachments: BOOKKEEPER-531.patch, BOOKKEEPER-531.patch
>
>
> Ivan commented this issue in BOOKKEEPER-461, but seems that the last patch I 
> attached doesn't address this comment.
> https://issues.apache.org/jira/browse/BOOKKEEPER-461?focusedCommentId=13503945&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13503945
> so when publish speed is larger than deliver/consume speed, it might 
> overwhelm readAhead cache and putting lots of collectOldEntries operations in 
> request queue, finally it OOM.

--
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