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

zhangduo pushed a commit to branch HBASE-29802
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 3ecc085abb2021b46c3b162e518a1923526794c2
Author: Duo Zhang <[email protected]>
AuthorDate: Wed Jan 7 19:47:46 2026 +0800

    HBASE-29802 add more logs
---
 .../hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java  | 10 ++++++++++
 .../org/apache/hadoop/hbase/master/region/MasterRegion.java    |  2 ++
 2 files changed, 12 insertions(+)

diff --git 
a/hbase-asyncfs/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java
 
b/hbase-asyncfs/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java
index 2dcbf56ade8..23c8bda1a5c 100644
--- 
a/hbase-asyncfs/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java
+++ 
b/hbase-asyncfs/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java
@@ -71,6 +71,8 @@ import 
org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.PipelineAckProto
 import org.apache.hadoop.hdfs.protocol.proto.DataTransferProtos.Status;
 import org.apache.hadoop.util.DataChecksum;
 import org.apache.yetus.audience.InterfaceAudience;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import org.apache.hbase.thirdparty.com.google.common.base.Preconditions;
 import org.apache.hbase.thirdparty.io.netty.buffer.ByteBuf;
@@ -109,6 +111,8 @@ import 
org.apache.hbase.thirdparty.io.netty.handler.timeout.IdleStateHandler;
 @InterfaceAudience.Private
 public class FanOutOneBlockAsyncDFSOutput implements AsyncFSOutput {
 
+  private static final Logger LOG = 
LoggerFactory.getLogger(FanOutOneBlockAsyncDFSOutput.class);
+
   // The MAX_PACKET_SIZE is 16MB, but it includes the header size and checksum 
size. So here we set
   // a smaller limit for data size.
   private static final int MAX_DATA_LEN = 12 * 1024 * 1024;
@@ -411,6 +415,10 @@ public class FanOutOneBlockAsyncDFSOutput implements 
AsyncFSOutput {
 
   @Override
   public int buffered() {
+    if (buf == null) {
+      LOG.warn("NPE when calling buffered on {}, state = {}", src, state);
+      throw new NullPointerException("buf is null");
+    }
     return buf.readableBytes();
   }
 
@@ -596,6 +604,7 @@ public class FanOutOneBlockAsyncDFSOutput implements 
AsyncFSOutput {
    */
   @Override
   public void recoverAndClose(CancelableProgressable reporter) throws 
IOException {
+    LOG.debug("Recover and closing {}", src);
     if (buf != null) {
       buf.release();
       buf = null;
@@ -612,6 +621,7 @@ public class FanOutOneBlockAsyncDFSOutput implements 
AsyncFSOutput {
    */
   @Override
   public void close() throws IOException {
+    LOG.debug("Closing {}", src);
     endBlock();
     state = State.CLOSED;
     closeDataNodeChannelsAndAwait();
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/region/MasterRegion.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/region/MasterRegion.java
index 97447e37b7c..fdbac5533b3 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/region/MasterRegion.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/region/MasterRegion.java
@@ -142,6 +142,7 @@ public final class MasterRegion {
   }
 
   private void closeRegion(boolean abort) {
+    LOG.debug("Close local region, abort={}", abort);
     try {
       region.close(abort);
     } catch (IOException e) {
@@ -150,6 +151,7 @@ public final class MasterRegion {
   }
 
   private void shutdownWAL() {
+    LOG.debug("Shutdown WAL of local region");
     try {
       walFactory.shutdown();
     } catch (IOException e) {

Reply via email to