Nanda kumar created HDDS-661:
--------------------------------

             Summary: When a volume fails in datanode VersionEndpointTask#call 
ends up in dead lock.
                 Key: HDDS-661
                 URL: https://issues.apache.org/jira/browse/HDDS-661
             Project: Hadoop Distributed Data Store
          Issue Type: Bug
          Components: Ozone Datanode
            Reporter: Nanda kumar




When a volume fails the call to {{VersionEndpointTask#call}} ends up in dead 
lock.


org.apache.hadoop.ozone.container.common.states.endpoint.VersionEndpointTask.call(VersionEndpointTask.java:78)
 --> we acquire VolumeSet read lock here.


org.apache.hadoop.ozone.container.common.states.endpoint.VersionEndpointTask.call(VersionEndpointTask.java:93)
        
org.apache.hadoop.ozone.container.common.volume.VolumeSet.failVolume(VolumeSet.java:276)
                
org.apache.hadoop.ozone.container.common.volume.VolumeSet.writeLock(VolumeSet.java:210)
                 ---> we wait for VolumeSet write lock.


Since this thread already holds the read lock, it cannot get the write lock and 
ends up in dead lock.





--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org

Reply via email to