[
https://issues.apache.org/jira/browse/HDFS-5558?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13830694#comment-13830694
]
Vinay commented on HDFS-5558:
-----------------------------
I tried to reproduce the problem as mentioned with the help of test changes in
HDFS-5557, but could not get the Invalid Cast Exception in trunk code.
Instead, {color:red}*{{checkLeases()}} got stuck in infinite loop with fsn
writelock held.*{color} Because checkLeases() will check repeatedly for the
files until all files are renewed. Instead get all the expired leases and check
once and return the call, check again after NAMENODE_LEASE_RECHECK_INTERVAL. if
required this would be a separate Jira though.
As of now I am seeing only possible case could be HDFS-5557, which leads to
this case.
> LeaseManager monitor thread can crash if the last block is complete but
> another block is not.
> ---------------------------------------------------------------------------------------------
>
> Key: HDFS-5558
> URL: https://issues.apache.org/jira/browse/HDFS-5558
> Project: Hadoop HDFS
> Issue Type: Bug
> Affects Versions: 0.23.9, 2.3.0
> Reporter: Kihwal Lee
> Assignee: Kihwal Lee
> Attachments: HDFS-5558.branch-023.patch, HDFS-5558.patch
>
>
> As mentioned in HDFS-5557, if a file has its last and penultimate block not
> completed and the file is being closed, the last block may be completed but
> the penultimate one might not. If this condition lasts long and the file is
> abandoned, LeaseManager will try to recover the lease and the block. But
> {{internalReleaseLease()}} will fail with invalid cast exception with this
> kind of file.
--
This message was sent by Atlassian JIRA
(v6.1#6144)