You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Colin Patrick McCabe (JIRA)" <ji...@apache.org> on 2013/10/21 19:06:42 UTC

[jira] [Created] (HDFS-5397) TestDecommission.testClusterStatsFederation failed with ConcurrentModificationException

Colin Patrick McCabe created HDFS-5397:
------------------------------------------

             Summary: TestDecommission.testClusterStatsFederation failed with ConcurrentModificationException
                 Key: HDFS-5397
                 URL: https://issues.apache.org/jira/browse/HDFS-5397
             Project: Hadoop HDFS
          Issue Type: Bug
            Reporter: Colin Patrick McCabe
            Priority: Minor


It seems like {{FsVolumeImpl#bpSlices}} is currently accessed and modified concurrently with no synchronization.

See this todo:
{code}
  void checkDirs() throws DiskErrorException {
    // TODO:FEDERATION valid synchronization
    for(BlockPoolSlice s : bpSlices.values()) {
      s.checkDirs();
    }
  }
{code}

and this backtrace:
{code}
java.util.ConcurrentModificationException
	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:894)
	at java.util.HashMap$EntryIterator.next(HashMap.java:934)
	at java.util.HashMap$EntryIterator.next(HashMap.java:932)
	at org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.FsVolumeImpl.shutdown(FsVolumeImpl.java:214)
	at org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.FsVolumeList.shutdown(FsVolumeList.java:168)
	at org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.FsDatasetImpl.shutdown(FsDatasetImpl.java:1235)
	at org.apache.hadoop.hdfs.server.datanode.DataNode.shutdown(DataNode.java:1292)
	at org.apache.hadoop.hdfs.MiniDFSCluster.shutdownDataNodes(MiniDFSCluster.java:1412)
	at org.apache.hadoop.hdfs.MiniDFSCluster.shutdown(MiniDFSCluster.java:1392)
	at org.apache.hadoop.hdfs.TestDecommission.teardown(TestDecommission.java:100)
{code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)