I have verified that the patch works for current HDFS trunk despite that
HDFS-1150's patch for trunk was a little different than for y20. So, the patch is still valid.
The reason for the modification is as follows: the call to the original constructor with two parameters has been replaced with call to the new one
return new DataNode(conf, dirs, resources);
While this is a totally compatible change from the Java perspective, one of Herriot aspects was bound to the 'call to the constructor with 2 params' and has been broken as the result of the change