FileUtil uses wrong stat command for FreeBSD --------------------------------------------
Key: HADOOP-7294 URL: https://issues.apache.org/jira/browse/HADOOP-7294 Project: Hadoop Common Issue Type: Bug Components: fs Affects Versions: 0.21.0 Environment: FreeBSD 8.0-STABLE Reporter: Vitalii Tymchyshyn I get next exception when try to use append: 2011-05-16 17:07:54,648 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: DatanodeRegistration(10.112.0.207:50010, storageID=DS-1047171559- 10.112.0.207-50010-1302796304164, infoPort=50075, ipcPort=50020):DataXceiver java.io.IOException: Failed to get link count on file /var/data/hdfs/data/current/finalized/subdir26/subdir17/subdir55/blk_-1266943884751786595: message=null; error=stat: illegal option -- c; exit value=1 at org.apache.hadoop.fs.FileUtil.createIOException(FileUtil.java:709) at org.apache.hadoop.fs.FileUtil.access$000(FileUtil.java:42) at org.apache.hadoop.fs.FileUtil$HardLink.getLinkCount(FileUtil.java:682) at org.apache.hadoop.hdfs.server.datanode.ReplicaInfo.unlinkBlock(ReplicaInfo.java:215) at org.apache.hadoop.hdfs.server.datanode.FSDataset.append(FSDataset.java:1116) It seems that FreeBSD is treated like UNIX and so calls 'stat -c%h', while FreeBSD is much more like Mac (since they have same BSD roots): $ stat --help stat: illegal option -- - usage: stat [-FlLnqrsx] [-f format] [-t timefmt] [file ...] $ stat -f%l a_file 1 -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira