Ajay Chitre created HADOOP-10436:
------------------------------------
Summary: ToolRunner is not thread-safe
Key: HADOOP-10436
URL: https://issues.apache.org/jira/browse/HADOOP-10436
Project: Hadoop Common
Issue Type: Bug
Components: util
Reporter: Ajay Chitre
ToolRunner class is not thread-safe because it uses GenericOptionsParser. The
constructor of GenericOptionsParser uses 'OptionBuilder' which is a singleton
class that uses instance variables. In other words, OptionBuilder is NOT
thread safe. As a result, when multiple Hadoop jobs are triggered
simultaneously using ToolRunner they end up stepping on each other.
The easiest way to fix it is by making 'buildGeneralOptions' synchronized in
GenericOptionsParser.
private static synchronized Options buildGeneralOptions(Options opts) {
If this seems like the correct way of fixing this, either we can provide a
patch or someone can quickly fix it. Thanks.
Ajay Chitre
[email protected]
Virendra Singh
[email protected]
--
This message was sent by Atlassian JIRA
(v6.2#6252)