You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Chen Liang (Jira)" <ji...@apache.org> on 2020/11/17 23:14:00 UTC

[jira] [Created] (HADOOP-17382) AbfsInputStream#seek throws EOFException when seek past the end of stream

Chen Liang created HADOOP-17382:
-----------------------------------

             Summary: AbfsInputStream#seek throws EOFException when seek past the end of stream
                 Key: HADOOP-17382
                 URL: https://issues.apache.org/jira/browse/HADOOP-17382
             Project: Hadoop Common
          Issue Type: Improvement
            Reporter: Chen Liang


Currently AbfsInputStream#seek has below check:
{code}
public synchronized void seek(long n) throws IOException {
...
if (n > contentLength) {
 throw new EOFException(FSExceptionMessages.CANNOT_SEEK_PAST_EOF);
}
...
}
{code}
So if a the seek is called with a position past the end of the stream, a EOFException gets thrown. However, it appears to me this behavior is different from some other inputstream impls, such as \{{S3AInputStream}} and \{{LocalFSFileInputStream}}, where seek passing the end is allowed, only that a later read call will return -1 indicating EOF. I think it would be better to have AbfsInputStream do the same thing.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-dev-help@hadoop.apache.org