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

Arpit Agarwal commented on HDFS-7112:
-------------------------------------

Thanks for taking this up Xiaoyu! The overall approach looks good to me. Few 
comments below:

# FsDatasetImpl.java: We should avoid adding volumes to asyncDiskService unless 
there is a RAM_DISK volume configured. This avoids creating unnecessary thread 
pools on most deployments which will not have RAM_DISK.
# We don't need the counter and logging in {{addExecutorForVolume}}. We will 
never add more than one thread per volume.
# {{onStartLazyPersist}} should be called by {{saveNextReplica}} before it 
calls {{submitLazyPersistTask}}.
# {{onFailLazyPersist}} should never be called unless {{onStartLazyPersist}} 
has been called. I think it can be called on some failure paths even if 
submitLazyPersistTask was not called.
# {{BlockPoolSlice#lazyPersistReplica}} is unused, can be removed.
# {{RamDiskAsyncLazyPersistService#countPendingTasks}} is unused.
# It would be good if RamDiskAsyncLazyPersistService did not have a dependency 
on DataNode/FsDatasetImpl. It can accept the success and failure callbacks as 
parameters. But it's okay to fix it later in a separate Jira.



> LazyWriter should use either async IO or one thread per physical disk
> ---------------------------------------------------------------------
>
>                 Key: HDFS-7112
>                 URL: https://issues.apache.org/jira/browse/HDFS-7112
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: datanode
>    Affects Versions: HDFS-6581
>            Reporter: Arpit Agarwal
>            Assignee: Xiaoyu Yao
>             Fix For: 2.6.0
>
>         Attachments: HDFS-7112.0.patch
>
>
> The LazyWriter currently uses synchronous IO and a single thread. This limits 
> the throughput to that of a single disk. Using either async overlapped IO or 
> one thread per physical disk will improve the write throughput.



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

Reply via email to