We have discussed to optimize number extended attributes and asked to report separate JIRA while implementing HDFS-11150
This is the JIRA to track that work
For the context, comment copied from
Yuanbo Liu wrote : I've tried that before. There is an issue here if we only mark the directory. When recovering from FsImage, the InodeMap isn't built up, so we don't know the sub-inode of a given inode, in the end, We cannot add these inodes to movement queue in FSDirectory#addToInodeMap, any thoughts?
Uma Maheswara Rao G wrote: I got what you are saying. Ok for simplicity we can add for all Inodes now. For this to handle 100%, we may need intermittent processing, like first we should add them to some intermittentList while loading fsImage, once fully loaded and when starting active services, we should process that list and do required stuff. But it would add some additional complexity may be. Let's do with all file inodes now and we can revisit later if it is really creating issues. How about you raise a JIRA for it and think to optimize separately?
Andrew Wang wrote in
HDFS-10285merge time review comment : HDFS-10899also the cursor of the iterator in the EZ root xattr to track progress and handle restarts. I wonder if we can do something similar here to avoid having an xattr-per-file being moved.