hadoop-hdfs-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xiaoqiao He (Jira)" <j...@apache.org>
Subject [jira] [Resolved] (HDFS-15160) ReplicaMap, Disk Balancer, Directory Scanner and various FsDatasetImpl methods should use datanode readlock
Date Sat, 11 Sep 2021 13:52:00 GMT

     [ https://issues.apache.org/jira/browse/HDFS-15160?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Xiaoqiao He resolved HDFS-15160.
--------------------------------
    Fix Version/s: 3.2.3
       Resolution: Fixed

> ReplicaMap, Disk Balancer, Directory Scanner and various FsDatasetImpl methods should
use datanode readlock
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-15160
>                 URL: https://issues.apache.org/jira/browse/HDFS-15160
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: datanode
>    Affects Versions: 3.3.0
>            Reporter: Stephen O'Donnell
>            Assignee: Stephen O'Donnell
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 3.4.0, 3.2.3, 3.3.1
>
>         Attachments: HDFS-15160-branch-3.3-001.patch, HDFS-15160.001.patch, HDFS-15160.002.patch,
HDFS-15160.003.patch, HDFS-15160.004.patch, HDFS-15160.005.patch, HDFS-15160.006.patch, HDFS-15160.007.patch,
HDFS-15160.008.patch, HDFS-15160.branch-3-3.001.patch, image-2020-04-10-17-18-08-128.png,
image-2020-04-10-17-18-55-938.png
>
>          Time Spent: 6h
>  Remaining Estimate: 0h
>
> Now we have HDFS-15150, we can start to move some DN operations to use the read lock
rather than the write lock to improve concurrence. The first step is to make the changes to
ReplicaMap, as many other methods make calls to it.
> This Jira switches read operations against the volume map to use the readLock rather
than the write lock.
> Additionally, some methods make a call to replicaMap.replicas() (eg getBlockReports,
getFinalizedBlocks, deepCopyReplica) and only use the result in a read only fashion, so they
can also be switched to using a readLock.
> Next is the directory scanner and disk balancer, which only require a read lock.
> Finally (for this Jira) are various "low hanging fruit" items in BlockSender and fsdatasetImpl
where is it fairly obvious they only need a read lock.
> For now, I have avoided changing anything which looks too risky, as I think its better
to do any larger refactoring or risky changes each in their own Jira.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-help@hadoop.apache.org


Mime
View raw message