[
https://issues.apache.org/jira/browse/HDFS-15160?focusedWorklogId=621726&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-621726
]
ASF GitHub Bot logged work on HDFS-15160:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 12/Jul/21 20:44
Start Date: 12/Jul/21 20:44
Worklog Time Spent: 10m
Work Description: amahussein opened a new pull request #3196:
URL: https://github.com/apache/hadoop/pull/3196
…and various FsDatasetImpl methods should use datanode readlock. Contributed
By Stephen O'Donnell and Ahmed Hussein
Backporting HDFS-15160 ReplicaMap, Disk Balancer, Directory Scanner and
various FsDatasetImpl methods should use datanode readlock.
Also backported the two jiras that fix unit tests:
- HDFS-15818
- HDFS-15457
The main Conflicts were as follow:
- main conflicts caused by [HDFS-10636. Modify ReplicaInfo to remove the
assumption that replica metadata and data are stored in
java.io.File.](https://issues.apache.org/jira/browse/HDFS-10636)
- `FsDatasetImpl.java#validateBlockFile` due to HDFS-10636
- `FsDatasetImpl.java#getFile` only exists in branch-2.10 and was
removed in HDFS-10636
- `DiskBalancer` does not exist in branch-2.10
- `FsDatasetImpl.java#moveBlockAcrossStorage` is different in branch-2.10
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 621726)
Time Spent: 40m (was: 0.5h)
> 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.3.1, 3.4.0
>
> 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: 40m
> 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: [email protected]
For additional commands, e-mail: [email protected]