You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "zhaoyunjiong (JIRA)" <ji...@apache.org> on 2013/07/24 10:21:49 UTC

[jira] [Created] (MAPREDUCE-5415) LeaseRenewer throw java.util.ConcurrentModificationException when timeout

zhaoyunjiong created MAPREDUCE-5415:
---------------------------------------

             Summary: LeaseRenewer throw java.util.ConcurrentModificationException when timeout
                 Key: MAPREDUCE-5415
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-5415
             Project: Hadoop Map/Reduce
          Issue Type: Bug
    Affects Versions: 1.2.0
            Reporter: zhaoyunjiong
            Assignee: zhaoyunjiong


In LeaseRenewer, when renew() throw SocketTimeoutException, c.abort() will remove one dfsclient from dfsclients. Here will throw a ConcurrentModificationException because dfsclients changed after the iterator created by "for(DFSClient c : dfsclients)":

Exception in thread "org.apache.hadoop.hdfs.LeaseRenewer$1@75fa1077" java.util.ConcurrentModificationException
        at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
        at java.util.AbstractList$Itr.next(AbstractList.java:343)
        at org.apache.hadoop.hdfs.LeaseRenewer.run(LeaseRenewer.java:406)
        at org.apache.hadoop.hdfs.LeaseRenewer.access$600(LeaseRenewer.java:69)
        at org.apache.hadoop.hdfs.LeaseRenewer$1.run(LeaseRenewer.java:273)
        at java.lang.Thread.run(Thread.java:662)


--
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