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

Konstantin Shvachko commented on HDFS-1320:
-------------------------------------------

# You missed {{NameNode.stateChangeLog}}. {{debug()}} is called for it in many 
place: 
NameNode, UnderReplicatedBlocks, FSDirectory, BlockManager, INodeDirectory.
# {{BlockPlacementPolicyDefault.isGoodTarget()}} debugs without using 
{{isDebugEnabled()}}.
I'd also prefer if the local variable {{logr}} was replaced explicitly by 
{{FSNamesystem.LOG}}.
# Could you please remove unused import of {{DFSUtil}} (introduced by somebody 
else) in NameNode.java and DataNode.java.
# In DFSClient could you please remove unused import of 
{{BlockTokenIdentifier}}. 
# The same in DFSOutputStream for {{FileStatus}}.
# I would not bother adding {{isDebugEnabled()}} into tests. The performance is 
not so important there. Besides, they are supposed to run in debug mode, so it 
is just adding more code in this case.

> Add LOG.isDebugEnabled() guard for each LOG.debug("...")
> --------------------------------------------------------
>
>                 Key: HDFS-1320
>                 URL: https://issues.apache.org/jira/browse/HDFS-1320
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>    Affects Versions: 0.22.0
>            Reporter: Erik Steffl
>             Fix For: 0.22.0
>
>         Attachments: HDFS-1320-0.22.patch
>
>
> Each LOG.debug("...") should be executed only if LOG.isDebugEnabled() is 
> true, in some cases it's expensive to construct the string that is being 
> printed to log. It's much easier to always use LOG.isDebugEnabled() because 
> it's easier to check (rather than in each case reason wheather it's 
> neccessary or not).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to