[ https://issues.apache.org/jira/browse/HDFS-16429?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Xiaoqiao He resolved HDFS-16429. -------------------------------- Fix Version/s: 3.4.0 Hadoop Flags: Reviewed Resolution: Fixed Committed to trunk. Thanks [~Aiphag0] for your contributions! > Add DataSetLockManager to manage fine-grain locks for FsDataSetImpl > ------------------------------------------------------------------- > > Key: HDFS-16429 > URL: https://issues.apache.org/jira/browse/HDFS-16429 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs > Reporter: Mingxiang Li > Assignee: Mingxiang Li > Priority: Major > Labels: pull-request-available > Fix For: 3.4.0 > > Time Spent: 1h 40m > Remaining Estimate: 0h > > 1、Use lockManager to maintain two level lock for FsDataSetImpl. > The simple lock model like this.Parts of implemented as follows > * As for finalizeReplica(),append(),createRbw()....First get BlockPoolLock > read lock,and then get BlockPoolLock-volume-lock write lock. > * As for getStoredBlock(),getMetaDataInputStream()....First get > BlockPoolLock read lock,and the then get BlockPoolLock-volume-lock read lock. > * As for deepCopyReplica(),getBlockReports() get the BlockPoolLock read lock. > * As for delete hold the BlockPoolLock write lock. > 2、Make LightWeightResizableGSet become thread safe.It not become performance > bottleneck if we make it thread safe.We can reduce lock grain size for > ReplicaMap when make LightWeightResizableGSet thread safe. -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org