Kihwal Lee created HDFS-4181:
--------------------------------

             Summary: LeaseManager tries to double remove and prints extra 
messages
                 Key: HDFS-4181
                 URL: https://issues.apache.org/jira/browse/HDFS-4181
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: name-node
    Affects Versions: 2.0.2-alpha, 0.23.4
            Reporter: Kihwal Lee
            Assignee: Kihwal Lee
            Priority: Critical


When checkLeases() runs, internalReleaseLease() is called on the expired ones. 
When it returns true, the lease is already removed, yet it is tried again in 
checkLease(). This causes unnecessary ERROR messages to be logged. The line 
doing {{removing.add(p)}} should be removed.

The internalReleaseLease() method logs a detailed message per call, so the 
extra INFO log message from checkLease() is redundant. 

The error message from removeLease() can be very big and needs to be cut down. 
When the namenode itself is holding a lot of leases for block recovery, hitting 
this error is very expensive. In one instance, slow block recovery caused the 
namenode to hold more than 42K leases. The one log line in this case was over 4 
MB.  The dump of data structure should be only enabled in debug mode.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to