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

Reply via email to