HDFS-2976. Merging change r1298495, r1298507 and r1298508 from trunk to branch-2.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1609848 13f79535-47bb-0310-9956-ffa450edef68
HDFS-2976. Merging change r1609849 from trunk to branch-2.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1609850 13f79535-47bb-0310-9956-ffa450edef68
HADOOP-8185. Merging change r1389010 from trunk to branch-2.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1609853 13f79535-47bb-0310-9956-ffa450edef68
HADOOP-8158. Merging change r1609854 from trunk to branch-2.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1609855 13f79535-47bb-0310-9956-ffa450edef68