You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by at...@apache.org on 2012/04/05 01:36:30 UTC
svn commit: r1309625 - in
/hadoop/common/trunk/hadoop-common-project/hadoop-common: CHANGES.txt
src/main/java/org/apache/hadoop/fs/ByteBufferReadable.java
Author: atm
Date: Wed Apr 4 23:36:29 2012
New Revision: 1309625
URL: http://svn.apache.org/viewvc?rev=1309625&view=rev
Log:
HADOOP-8244. Improve comments on ByteBufferReadable.read. Contributed by Henry Robinson.
Modified:
hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ByteBufferReadable.java
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1309625&r1=1309624&r2=1309625&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt Wed Apr 4 23:36:29 2012
@@ -52,6 +52,8 @@ Trunk (unreleased changes)
HADOOP-7994. Remove getProtocolVersion and getProtocolSignature from the
client side translator and server side implementation. (jitendra)
+ HADOOP-8244. Improve comments on ByteBufferReadable.read. (Henry Robinson
+ via atm)
BUG FIXES
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ByteBufferReadable.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ByteBufferReadable.java?rev=1309625&r1=1309624&r2=1309625&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ByteBufferReadable.java (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ByteBufferReadable.java Wed Apr 4 23:36:29 2012
@@ -28,18 +28,28 @@ public interface ByteBufferReadable {
/**
* Reads up to buf.remaining() bytes into buf. Callers should use
* buf.limit(..) to control the size of the desired read.
- *
- * After the call, buf.position() should be unchanged, and therefore any data
- * can be immediately read from buf.
- *
+ * <p/>
+ * After a successful call, buf.position() and buf.limit() should be
+ * unchanged, and therefore any data can be immediately read from buf.
+ * buf.mark() may be cleared or updated.
+ * <p/>
+ * In the case of an exception, the values of buf.position() and buf.limit()
+ * are undefined, and callers should be prepared to recover from this
+ * eventuality.
+ * <p/>
* Many implementations will throw {@link UnsupportedOperationException}, so
* callers that are not confident in support for this method from the
* underlying filesystem should be prepared to handle that exception.
+ * <p/>
+ * Implementations should treat 0-length requests as legitimate, and must not
+ * signal an error upon their receipt.
*
* @param buf
- * the ByteBuffer to receive the results of the read operation
+ * the ByteBuffer to receive the results of the read operation. Up to
+ * buf.limit() - buf.position() bytes may be read.
* @return the number of bytes available to read from buf
- * @throws IOException if there is some error performing the read
+ * @throws IOException
+ * if there is some error performing the read
*/
public int read(ByteBuffer buf) throws IOException;
}