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

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


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

commit 5c34e846561efc26ba7fc8b64383fefad4f1072a
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]>
---
 .../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 ed7735a075f..aa27df46c5e 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
@@ -182,6 +182,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