[
https://issues.apache.org/jira/browse/HADOOP-11012?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14112751#comment-14112751
]
Jason Lowe commented on HADOOP-11012:
-------------------------------------
Thanks for reporting the issue and providing a patch, Eric!
It would be more efficient and a bit clearer if we saved off the result of the
initial readShort call and switched on that rather than throwing it away as a
"test read."
There's a lot of duplication setting up the input stream in the unit tests, and
it's probably worth it to factor this out.
Given there appears to be no overlap between the three added test cases
(0-byte, 1-byte, and 2-byte files) it would be nice to put these in separate
unit tests. Then the unit test that fails makes it obvious which test case is
broken.
> hadoop fs -text of zero-length file causes EOFException
> -------------------------------------------------------
>
> Key: HADOOP-11012
> URL: https://issues.apache.org/jira/browse/HADOOP-11012
> Project: Hadoop Common
> Issue Type: Bug
> Components: fs
> Affects Versions: 2.5.0
> Reporter: Eric Payne
> Assignee: Eric Payne
> Attachments: HDFS-6915.201408271824.txt
>
>
> List:
> $ $HADOOP_PREFIX/bin/hadoop fs -ls /user/ericp/foo
> -rw------- 3 ericp hdfs 0 2014-08-22 16:37 /user/ericp/foo
> Cat:
> $ $HADOOP_PREFIX/bin/hadoop fs -cat /user/ericp/foo
> Text:
> $ $HADOOP_PREFIX/bin/hadoop fs -text /user/ericp/foo
> text: java.io.EOFException
> at java.io.DataInputStream.readShort(DataInputStream.java:315)
> at
> org.apache.hadoop.fs.shell.Display$Text.getInputStream(Display.java:130)
> at org.apache.hadoop.fs.shell.Display$Cat.processPath(Display.java:98)
> at org.apache.hadoop.fs.shell.Command.processPaths(Command.java:306)
> at
> org.apache.hadoop.fs.shell.Command.processPathArgument(Command.java:278)
> at org.apache.hadoop.fs.shell.Command.processArgument(Command.java:260)
> at org.apache.hadoop.fs.shell.Command.processArguments(Command.java:244)
> at
> org.apache.hadoop.fs.shell.Command.processRawArguments(Command.java:190)
> at org.apache.hadoop.fs.shell.Command.run(Command.java:154)
> at org.apache.hadoop.fs.FsShell.run(FsShell.java:287)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
> at org.apache.hadoop.fs.FsShell.main(FsShell.java:340)
--
This message was sent by Atlassian JIRA
(v6.2#6252)