hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Barber (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HADOOP-9491) HOD fails to run under python 2.6.1
Date Mon, 22 Apr 2013 10:29:16 GMT
Jonathan Barber created HADOOP-9491:

             Summary: HOD fails to run under python 2.6.1
                 Key: HADOOP-9491
                 URL: https://issues.apache.org/jira/browse/HADOOP-9491
             Project: Hadoop Common
          Issue Type: Bug
          Components: contrib/hod
    Affects Versions: 1.1.2
         Environment: RHEL6.4, python-2.6.6-36.el6.x86_64
            Reporter: Jonathan Barber
            Priority: Critical
             Fix For: 1.1.2

Running HOD from the hadoop-1.1.2-bin.tar.gz distribution with python 2.6.6 on RHEL6.4 fails
with the output:
$ ./contrib/hod/bin/hod -c contrib/hod/conf/hodrc list -d /tmp/hod-jbarber 
/homes/jbarber/hadoop-1.1.2/contrib/hod/hodlib/Common/threads.py:19: DeprecationWarning: The
popen2 module is deprecated.  Use the subprocess module.
  from popen2 import Popen4, Popen3, MAXFD
Traceback (most recent call last):
  File "hod", line 411, in <module>
  File "/homes/jbarber/hadoop-1.1.2/contrib/hod/hodlib/Common/setup.py", line 449, in __init__
  File "/usr/lib64/python2.6/ConfigParser.py", line 286, in read
    self._read(fp, filename)
  File "/usr/lib64/python2.6/ConfigParser.py", line 475, in _read
    cursect = self._dict()
TypeError: 'dict' object is not callable

This error appears because the Hadoop "config" class is an instance of the  python ConfigParser
class with a class variable called ._dict. However, the internals of the ConfigParser class
appears to have been changed with later versions of python to have a method called ._dict()
which now conflicts with the "config" classes usage.

This can be fixed by changing all references in contrib/hod/hodlib/Common/setup.py from ._dict
to ._hod_dict, e.g.:
sed -i 's/\._dict/._hod_dict/' contrib/hod/hodlib/Common/setup.py

I tested this change by repeating the hod "list" command successfully.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

View raw message