Description
In the HarFsInputStream of HarFileSystem, when reading data by interface "int read(byte[] b)", "int read(byte[] b, int offset, int len)" wille be called and position wille be update, so position need not be update in interface "int read(byte[] b)"
//HarFileSystem.HarFsInputStream public synchronized int read(byte[] b) throws IOException { int ret = read(b, 0, b.length); if (ret != -1) { position += ret; } return ret; } /** * */ public synchronized int read(byte[] b, int offset, int len) throws IOException { int newlen = len; int ret = -1; if (position + len > end) { newlen = (int) (end - position); } // end case if (newlen == 0) return ret; ret = underLyingStream.read(b, offset, newlen); position += ret; return ret; }
Attachments
Attachments
Issue Links
- relates to
-
HADOOP-9361 Strictly define the expected behavior of filesystem APIs and write tests to verify compliance
- Closed