Currently HDFS NFS gateway only supports HDFS as the underlying filesystem.
Federated HDFS with ViewFS helps in improving the scalability of the name nodes. However NFS is not supported with ViewFS.
With this change, ViewFS using HDFS as the underlying filesystem can be exported using NFS. ViewFS mount table will be used to determine the exports which needs to be supported.
Some important points
1) This patch only supports HDFS as the underlying filesystem for ViewFS.
2) This patch add support to add more than one export point in the NFS gateway
3) Root filesystem of the ViewFS will not be mountable for NFS gateway with ViewFS,
however this will not be the case for NFS gateway with HDFS
4) A filehandle now apart from the field will also contain an identifier to identify the name node, this will be used to map to correct name node for file operations.
Please find the attached pdf document which helps in explaining the design and the solution.