You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@distributedlog.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2016/12/28 07:33:59 UTC

[jira] [Commented] (DL-111) ReadAhead Cache should cache entries rather than records

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

Hudson commented on DL-111:
---------------------------

UNSTABLE: Integrated in Jenkins build distributedlog-nightly-build #170 (See [https://builds.apache.org/job/distributedlog-nightly-build/170/])
DL-111: ReadAhead Cache should cache entries rather than records (sijieg: rev b5d44ccb6aa0ec633ff7fe5a870fa607ea71d92d)
* (edit) distributedlog-core/src/main/java/com/twitter/distributedlog/readahead/ReadAheadTracker.java
* (edit) distributedlog-core/src/test/java/com/twitter/distributedlog/TestAsyncReaderWriter.java
* (edit) distributedlog-core/src/main/java/com/twitter/distributedlog/BKLogReadHandler.java
* (edit) distributedlog-core/src/main/java/com/twitter/distributedlog/ReadAheadCache.java
* (edit) distributedlog-core/src/main/java/com/twitter/distributedlog/readahead/ReadAheadWorker.java
* (edit) distributedlog-core/src/main/java/com/twitter/distributedlog/BKAsyncLogReaderDLSN.java
* (edit) distributedlog-core/src/main/java/com/twitter/distributedlog/BKSyncLogReaderDLSN.java


> ReadAhead Cache should cache entries rather than records
> --------------------------------------------------------
>
>                 Key: DL-111
>                 URL: https://issues.apache.org/jira/browse/DL-111
>             Project: DistributedLog
>          Issue Type: Improvement
>            Reporter: Sijie Guo
>
> Current readahead cache cache records. So it will be a lot of callbacks (function calls) when polling a record off the read
> ahead cache. Most of the cpu cycles are unnecessarily spent
>     on function calls on polling records off the readahead cache. It is the throughput bottleneck for a DL reader.
>     This change is to change ReadAhead cache to cache entries rather than records. Defer the deserilization of records later on
>  when the reader wants to access the records. It also make
>     the cache more efficient to reduce the memory footprint.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)