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

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


The following commit(s) were added to refs/heads/master by this push:
     new 5edf95282 [#2517] fix(client): IllegalReferenceCountException about 
ShuffleBlockInfo (#2638)
5edf95282 is described below

commit 5edf952826aebbbbfaade287e1c39171394d6c43
Author: Neo Chien <[email protected]>
AuthorDate: Mon Oct 20 17:49:52 2025 +0800

    [#2517] fix(client): IllegalReferenceCountException about ShuffleBlockInfo 
(#2638)
    
    ### What changes were proposed in this pull request?
    Fix `IllegalReferenceCountException` about ShuffleBlockInfo
    
    ### Why are the changes needed?
    for https://github.com/apache/uniffle/issues/2517
    
    ### Does this PR introduce any user-facing change?
    No.
    
    ### How was this patch tested?
    current UT
---
 .../apache/uniffle/client/impl/grpc/ShuffleServerGrpcClient.java    | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git 
a/internal-client/src/main/java/org/apache/uniffle/client/impl/grpc/ShuffleServerGrpcClient.java
 
b/internal-client/src/main/java/org/apache/uniffle/client/impl/grpc/ShuffleServerGrpcClient.java
index 0a5259284..00c25e672 100644
--- 
a/internal-client/src/main/java/org/apache/uniffle/client/impl/grpc/ShuffleServerGrpcClient.java
+++ 
b/internal-client/src/main/java/org/apache/uniffle/client/impl/grpc/ShuffleServerGrpcClient.java
@@ -573,6 +573,12 @@ public class ShuffleServerGrpcClient extends GrpcClient 
implements ShuffleServer
         List<ShuffleBlock> shuffleBlocks = Lists.newArrayList();
         int partitionRequireSize = 0;
         for (ShuffleBlockInfo sbi : ptb.getValue()) {
+          if (sbi.getData().refCnt() == 0) {
+            throw new RssException(
+                "Detected a ShuffleBlockInfo with a released buffer (refCnt=0) 
for blockId["
+                    + sbi.getBlockId()
+                    + "].");
+          }
           shuffleBlocks.add(
               ShuffleBlock.newBuilder()
                   .setBlockId(sbi.getBlockId())

Reply via email to