[
https://issues.apache.org/jira/browse/HDDS-661?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16653548#comment-16653548
]
Nanda kumar commented on HDDS-661:
----------------------------------
Thanks [~hanishakoneru] for the contribution, I have committed this to trunk
and created HDDS-681 to track VolumeSet lock improvement.
> 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
> Assignee: Hanisha Koneru
> Priority: Major
> Attachments: HDDS-661.001.patch
>
>
> When a volume fails in datanode, the call to {{VersionEndpointTask#call}}
> ends up in dead-lock.
> {code:java}
> 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.
> {code}
> 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: [email protected]
For additional commands, e-mail: [email protected]