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

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


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

commit b0d010d5f72cdadc8da56902234497cd3e14d04c
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 e905884ddd0..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