Skip to content

Commit 32e1fde

Browse files
ZanderXuxuzq
authored andcommitted
HDFS-17390. [FGL] FSDirectory supports this fine-grained locking (#6573)
1 parent 3bfc70b commit 32e1fde

File tree

1 file changed

+11
-6
lines changed
  • hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode

1 file changed

+11
-6
lines changed

hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirectory.java

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818
package org.apache.hadoop.hdfs.server.namenode;
1919

20+
import org.apache.hadoop.hdfs.server.namenode.fgl.FSNamesystemLockMode;
2021
import org.apache.hadoop.hdfs.server.namenode.snapshot.Snapshot;
2122
import org.apache.hadoop.util.StringUtils;
2223

@@ -262,27 +263,31 @@ public void setINodeAttributeProvider(
262263
* remain as placeholders only
263264
*/
264265
void readLock() {
265-
assert namesystem.hasReadLock() : "Should hold namesystem read lock";
266+
assert namesystem.hasReadLock(FSNamesystemLockMode.FS) :
267+
"Should hold read lock of namesystem FSLock";
266268
}
267269

268270
void readUnlock() {
269-
assert namesystem.hasReadLock() : "Should hold namesystem read lock";
271+
assert namesystem.hasReadLock(FSNamesystemLockMode.FS) :
272+
"Should hold read lock of namesystem FSLock";
270273
}
271274

272275
void writeLock() {
273-
assert namesystem.hasWriteLock() : "Should hold namesystem write lock";
276+
assert namesystem.hasWriteLock(FSNamesystemLockMode.FS) :
277+
"Should hold write lock of namesystem FSLock";
274278
}
275279

276280
void writeUnlock() {
277-
assert namesystem.hasWriteLock() : "Should hold namesystem write lock";
281+
assert namesystem.hasWriteLock(FSNamesystemLockMode.FS) :
282+
"Should hold write lock of namesystem FSLock";
278283
}
279284

280285
boolean hasWriteLock() {
281-
return namesystem.hasWriteLock();
286+
return namesystem.hasWriteLock(FSNamesystemLockMode.FS);
282287
}
283288

284289
boolean hasReadLock() {
285-
return namesystem.hasReadLock();
290+
return namesystem.hasReadLock(FSNamesystemLockMode.FS);
286291
}
287292

288293
public int getListLimit() {

0 commit comments

Comments
 (0)