[ https://issues.apache.org/jira/browse/KAFKA-1646?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14315710#comment-14315710 ]
Honghai Chen commented on KAFKA-1646: ------------------------------------- How about add one more column to recovery-point-offset-checkpoint to record the last position of the active segment, and then when recover, do NOT call " activeSegment.recover(config.maxMessageSize)", but call the new LogSegment with set end as the position read from recovery-point-offset-checkpoint. By this way, we should only need recover the missed messages in last file , not the whole last file, make sense? [~jkreps] Or do you have other recommendation for the fix? > Improve consumer read performance for Windows > --------------------------------------------- > > Key: KAFKA-1646 > URL: https://issues.apache.org/jira/browse/KAFKA-1646 > Project: Kafka > Issue Type: Improvement > Components: log > Affects Versions: 0.8.1.1 > Environment: Windows > Reporter: xueqiang wang > Assignee: xueqiang wang > Labels: newbie, patch > Attachments: Improve consumer read performance for Windows.patch, > KAFKA-1646-truncate-off-trailing-zeros-on-broker-restart-if-bro.patch, > KAFKA-1646_20141216_163008.patch > > > This patch is for Window platform only. In Windows platform, if there are > more than one replicas writing to disk, the segment log files will not be > consistent in disk and then consumer reading performance will be dropped down > greatly. This fix allocates more disk spaces when rolling a new segment, and > then it will improve the consumer reading performance in NTFS file system. > This patch doesn't affect file allocation of other filesystems, for it only > adds statements like 'if(Os.iswindow)' or adds methods used on Windows. -- This message was sent by Atlassian JIRA (v6.3.4#6332)