You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "Andrew Onischuk (JIRA)" <ji...@apache.org> on 2015/08/28 11:28:45 UTC

[jira] [Resolved] (AMBARI-12912) Python Wrapper Can Choose Two Different Python Versions

     [ https://issues.apache.org/jira/browse/AMBARI-12912?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Onischuk resolved AMBARI-12912.
--------------------------------------
    Resolution: Fixed

Committed to trunk and branch-2.1

> Python Wrapper Can Choose Two Different Python Versions
> -------------------------------------------------------
>
>                 Key: AMBARI-12912
>                 URL: https://issues.apache.org/jira/browse/AMBARI-12912
>             Project: Ambari
>          Issue Type: Bug
>            Reporter: Andrew Onischuk
>            Assignee: Andrew Onischuk
>             Fix For: 2.1.2
>
>
> Environments that have 2 different versions of Python cause problems when
> running agent code in memory. This was encountered on an Ambari 1.6 upgrade to
> 2.1 where Python 2.6 had all of the site-packages, but python2.7 was being
> chosen by the agent.
> The `ambari-python-wrap` script is the problem. Consider the code:
>     
>     
>     
>     export PYTHONPATH=/usr/lib/python2.6/site-packages:/usr/lib/python2.6/site-packages/ambari_commons:$PYTHONPATH
>     
>     # reset settings
>     unset PYTHON
>     
>     # checking for preferable python versions
>     if [ -a /usr/bin/python2.7 ] && [ -z "$PYTHON" ]; then
>       PYTHON=/usr/bin/python2.7
>     fi
>     
>     if [ -a /usr/bin/python2.6 ] && [ -z "$PYTHON" ]; then
>       PYTHON=/usr/bin/python2.6
>     fi
>     
> This is hardcoding the `PYTHONPATH` to use `site-packages` from `python2.6`.
> But then, it choose the Python 2.7 executor as the wrapper. This means that
> the agents will be running as Python 2.7 and executing scripts with a Python
> 2.6 site-package.
> The observed problem was that the "rpm" and "yum" packages could not be loaded
> by agent code on an INSTALL command since these packages were part of the 2.6
> site-packages and not 2.7 site-packages.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)