HDFS-4000. TestParallelLocalRead fails with "input ByteBuffers must be direct buffers". Contributed by Colin Patrick McCabe
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1393884 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
2c66a9f5ae
commit
38943644e0
@ -276,6 +276,9 @@ Release 2.0.3-alpha - Unreleased
|
||||
HDFS-3753. Tests don't run with native libraries.
|
||||
(Colin Patrick McCabe via eli)
|
||||
|
||||
HDFS-4000. TestParallelLocalRead fails with "input ByteBuffers
|
||||
must be direct buffers". (Colin Patrick McCabe via eli)
|
||||
|
||||
Release 2.0.2-alpha - 2012-09-07
|
||||
|
||||
INCOMPATIBLE CHANGES
|
||||
|
@ -83,7 +83,7 @@ static interface ReadWorkerHelper {
|
||||
static class DirectReadWorkerHelper implements ReadWorkerHelper {
|
||||
@Override
|
||||
public int read(DFSInputStream dis, byte[] target, int startOff, int len) throws IOException {
|
||||
ByteBuffer bb = ByteBuffer.wrap(target);
|
||||
ByteBuffer bb = ByteBuffer.allocateDirect(target.length);
|
||||
int cnt = 0;
|
||||
synchronized(dis) {
|
||||
dis.seek(startOff);
|
||||
@ -95,6 +95,8 @@ public int read(DFSInputStream dis, byte[] target, int startOff, int len) throws
|
||||
cnt += read;
|
||||
}
|
||||
}
|
||||
bb.clear();
|
||||
bb.get(target);
|
||||
return cnt;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user