Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
Reviewed
Description
After replaying edits, the whole file system tree is recursively scanned in order to initialize the quota. For big name space, this can take a very long time. Since this is done during namenode failover, it also affects failover latency.
By using the Fork-Join framework, I was able to greatly reduce the initialization time. The following is the test result using the fsimage from one of the big name nodes we have.
threads | seconds |
---|---|
1 (existing) | 55 |
1 (fork-join) | 68 |
4 | 16 |
8 | 8 |
12 | 6 |
16 | 5 |
20 | 4 |
Attachments
Attachments
Issue Links
- is duplicated by
-
HDFS-11254 Standby NameNode may crash during failover if loading edits takes too long
- Resolved
- is related to
-
HDFS-11254 Standby NameNode may crash during failover if loading edits takes too long
- Resolved
- relates to
-
HDFS-11192 OOM during Quota Initialization lead to Namenode hang
- Open
-
HDFS-6763 Initialize file system-wide quota once on transitioning to active
- Resolved
-
HDFS-9003 ForkJoin thread pool leaks
- Resolved
-
HDFS-8879 Quota by storage type usage incorrectly initialized upon namenode restart
- Closed