This is an automated email from the ASF dual-hosted git repository.

lhotari pushed a commit to branch branch-2.9
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/branch-2.9 by this push:
     new 9bf3e3ffb63 [fix][offload] Fix numerical overflow bug while reading 
data from tiered storage (#18595)
9bf3e3ffb63 is described below

commit 9bf3e3ffb633a03d7ef76fbe47c273401882a4b9
Author: Shen Liu <[email protected]>
AuthorDate: Mon Nov 28 15:53:32 2022 +0800

    [fix][offload] Fix numerical overflow bug while reading data from tiered 
storage (#18595)
    
    Co-authored-by: druidliu <[email protected]>
    (cherry picked from commit 5c34e846561efc26ba7fc8b64383fefad4f1072a)
---
 .../mledger/offload/jcloud/impl/BlobStoreBackedInputStreamImpl.java    | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git 
a/tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreBackedInputStreamImpl.java
 
b/tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreBackedInputStreamImpl.java
index e3fc68ab7e2..c5fda387c73 100644
--- 
a/tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreBackedInputStreamImpl.java
+++ 
b/tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreBackedInputStreamImpl.java
@@ -144,6 +144,7 @@ public class BlobStoreBackedInputStreamImpl extends 
BackedInputStream {
 
     @Override
     public int available() throws IOException {
-        return (int)(objectLen - cursor) + buffer.readableBytes();
+        long available = objectLen - cursor + buffer.readableBytes();
+        return available > Integer.MAX_VALUE ? Integer.MAX_VALUE : (int) 
available;
     }
 }

Reply via email to