[
https://issues.apache.org/jira/browse/HDFS-1542?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12975088#action_12975088
]
Amit Nithian commented on HDFS-1542:
------------------------------------
Hey guys,
Not sure where we are on this but it just hit me.. if I unapply the
aforementioned patch that added the synchronized keyword to the writeXML, then
would the deadlock not happen? I don't care about dumping the configuration at
runtime for the moment but if I can get my jobs to run then that would free up
a lot of other internal tasks me and my team are doing. I suspect I just need
to do this and rebuild hadoop on the jobtracker machine which should minimize
any code changes across my cluster
Happy holidays!
Amit
> Deadlock in Configuration.writeXml when serialized form is larger than one
> DFS block
> ------------------------------------------------------------------------------------
>
> Key: HDFS-1542
> URL: https://issues.apache.org/jira/browse/HDFS-1542
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: hdfs client
> Affects Versions: 0.22.0, 0.23.0
> Reporter: Todd Lipcon
> Assignee: Todd Lipcon
> Priority: Critical
> Attachments: deadlock.txt, hdfs-1542.txt, Test.java
>
>
> Configuration.writeXml holds a lock on itself and then writes the XML to an
> output stream, during which DFSOutputStream will try to get a lock on
> ackQueue/dataQueue. Meanwihle the DataStreamer thread will call functions
> like conf.getInt() and deadlock against the other thread, since it could be
> the same conf object.
> This causes a deterministic deadlock whenever the serialized form is larger
> than block size.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.