瀏覽代碼

commit a101cdc3e6df09b006cc10d5681a7c810eba533b
Author: Thomas White <tomwhite@apache.org>
Date: Mon Nov 1 22:25:54 2010 +0000

HADOOP-6975. Integer overflow in S3InputStream for blocks > 2GB. Contributed by Patrick Kling.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1029867 13f79535-47bb-0310-9956-ffa450edef68


git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/yahoo-merge@1079117 13f79535-47bb-0310-9956-ffa450edef68

Owen O'Malley 14 年之前
父節點
當前提交
eff01c6ebc
共有 2 個文件被更改,包括 4 次插入1 次删除
  1. 3 0
      CHANGES.txt
  2. 1 1
      src/java/org/apache/hadoop/fs/s3/S3InputStream.java

+ 3 - 0
CHANGES.txt

@@ -297,6 +297,9 @@ Trunk (unreleased changes)
     HADOOP-7011.  Fix KerberosName.main() to not throw an NPE.
     (Aaron T. Myers via tomwhite)
 
+    HADOOP-6975.  Integer overflow in S3InputStream for blocks > 2GB.
+    (Patrick Kling via tomwhite)
+
 Release 0.21.1 - Unreleased
 
   IMPROVEMENTS

+ 1 - 1
src/java/org/apache/hadoop/fs/s3/S3InputStream.java

@@ -128,7 +128,7 @@ class S3InputStream extends FSInputStream {
       if (pos > blockEnd) {
         blockSeekTo(pos);
       }
-      int realLen = Math.min(len, (int) (blockEnd - pos + 1));
+      int realLen = (int) Math.min((long) len, (blockEnd - pos + 1L));
       int result = blockStream.read(buf, off, realLen);
       if (result >= 0) {
         pos += result;