[ 
https://issues.apache.org/jira/browse/HDFS-8971?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14993829#comment-14993829
 ] 

Tsz Wo Nicholas Sze commented on HDFS-8971:
-------------------------------------------

Hi, I appreciate using the new log API in order to make the code shorter in 
general but it may not be possible to remove the isDebugEnabled guards and 
keeping the same debug message format at the same time.

It is hard to read the debug messages printed by ByteArrayManager after the 
change here since some one-line messages are printed in multiple lines.  It is 
even worse when there are multiple threads.  See the output of 
TestByteArrayManager (or the attached log in HDFS-9383).

> Remove guards when calling LOG.debug() and LOG.trace() in client package
> ------------------------------------------------------------------------
>
>                 Key: HDFS-8971
>                 URL: https://issues.apache.org/jira/browse/HDFS-8971
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: build
>            Reporter: Mingliang Liu
>            Assignee: Mingliang Liu
>             Fix For: 2.8.0
>
>         Attachments: HDFS-8971.000.patch, HDFS-8971.001.patch
>
>
> We moved the {{shortcircuit}} package from {{hadoop-hdfs}} to 
> {{hadoop-hdfs-client}} module in JIRA 
> [HDFS-8934|https://issues.apache.org/jira/browse/HDFS-8934] and 
> [HDFS-8951|https://issues.apache.org/jira/browse/HDFS-8951], and 
> {{BlockReader}} in 
> [HDFS-8925|https://issues.apache.org/jira/browse/HDFS-8925]. Meanwhile, we 
> also replaced the _log4j_ log with _slf4j_ logger. There were existing code 
> in the client package to guard the log when calling {{LOG.debug()}} and 
> {{LOG.trace()}}, e.g. in {{ShortCircuitCache.java}}, we have code like this:
> {code:title=Trace with guards|borderStyle=solid}
> 724    if (LOG.isTraceEnabled()) {
> 725      LOG.trace(this + ": found waitable for " + key);
> 726    }
> {code}
> In _slf4j_, this kind of guard is not necessary. We should clean the code by 
> removing the guard from the client package.
> {code:title=Trace without guards|borderStyle=solid}
> 724    LOG.trace("{}: found waitable for {}", this, key);
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to