hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Nauroth (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-9491) HOD fails to run under python 2.6.1
Date Mon, 22 Apr 2013 19:09:15 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-9491?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13638329#comment-13638329

Chris Nauroth commented on HADOOP-9491:

Hi, Jonathan.  I applied the patch cleanly to branch-1 and reviewed the code.  The changes
look correct to me, just from the perspective of reviewing Python code.

I'm not generally familiar with HOD though, and I don't have a test environment ready to go
for it.  To the wider community: is there a HOD expert out there who can take a look?
> 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
>         Attachments: HADOOP-9491.patch
>   Original Estimate: 2h
>  Remaining Estimate: 2h
> 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>
>     options=hodOptions) 
>   File "/homes/jbarber/hadoop-1.1.2/contrib/hod/hodlib/Common/setup.py", line 449, in
>     self.read(configFile)
>   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