Prechádzať zdrojové kódy

HDFS-13712. BlockReaderRemote.read() logging improvement. Contributed by Gergo Repas.

(cherry picked from commit 344f324710522ffb27852c1a673c4f7d3d6eac4b)
Andrew Wang 7 rokov pred
rodič
commit
3b266abdad

+ 10 - 4
hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/client/impl/BlockReaderRemote.java

@@ -129,16 +129,22 @@ public class BlockReaderRemote implements BlockReader {
   @Override
   public synchronized int read(byte[] buf, int off, int len)
       throws IOException {
-    UUID randomId = (LOG.isTraceEnabled() ? UUID.randomUUID() : null);
-    LOG.trace("Starting read #{} file {} from datanode {}",
-        randomId, filename, datanodeID.getHostName());
+    boolean logTraceEnabled = LOG.isTraceEnabled();
+    UUID randomId = null;
+    if (logTraceEnabled) {
+      randomId = UUID.randomUUID();
+      LOG.trace("Starting read #{} file {} from datanode {}",
+          randomId, filename, datanodeID.getHostName());
+    }
 
     if (curDataSlice == null ||
         curDataSlice.remaining() == 0 && bytesNeededToFinish > 0) {
       readNextPacket();
     }
 
-    LOG.trace("Finishing read #{}", randomId);
+    if (logTraceEnabled) {
+      LOG.trace("Finishing read #{}", randomId);
+    }
 
     if (curDataSlice.remaining() == 0) {
       // we're at EOF now