Author: arp
Date: Tue Dec 10 19:50:02 2013
New Revision: 1549949
URL: http://svn.apache.org/r1549949
Log:
Merging r1549626 through r1549948 from trunk to branch HDFS-2832
Modified:
hadoop/common/branches/HDFS-2832/hadoop-common-project/hadoop-common/src/main/java/
(props changed)
hadoop/common/branches/HDFS-2832/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LineReader.java
Propchange:
hadoop/common/branches/HDFS-2832/hadoop-common-project/hadoop-common/src/main/java/
------------------------------------------------------------------------------
Merged
/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java:r1549626-1549948
Modified:
hadoop/common/branches/HDFS-2832/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LineReader.java
URL:
http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-2832/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LineReader.java?rev=1549949&r1=1549948&r2=1549949&view=diff
==============================================================================
---
hadoop/common/branches/HDFS-2832/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LineReader.java
(original)
+++
hadoop/common/branches/HDFS-2832/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LineReader.java
Tue Dec 10 19:50:02 2013
@@ -175,6 +175,11 @@ public class LineReader implements Close
}
}
+ protected int fillBuffer(InputStream in, byte[] buffer, boolean inDelimiter)
+ throws IOException {
+ return in.read(buffer);
+ }
+
/**
* Read a line terminated by one of CR, LF, or CRLF.
*/
@@ -208,7 +213,7 @@ public class LineReader implements Close
if (prevCharCR) {
++bytesConsumed; //account for CR from previous read
}
- bufferLength = in.read(buffer);
+ bufferLength = fillBuffer(in, buffer, prevCharCR);
if (bufferLength <= 0) {
break; // EOF
}
@@ -296,7 +301,7 @@ public class LineReader implements Close
int startPosn = bufferPosn; // Start from previous end position
if (bufferPosn >= bufferLength) {
startPosn = bufferPosn = 0;
- bufferLength = in.read(buffer);
+ bufferLength = fillBuffer(in, buffer, ambiguousByteCount > 0);
if (bufferLength <= 0) {
str.append(recordDelimiterBytes, 0, ambiguousByteCount);
break; // EOF