You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2016/04/13 23:59:25 UTC

[jira] [Commented] (AMBARI-15864) Re-Upgrade from 2.2 to 2.3+ Fails Due To Circular Symlink

    [ https://issues.apache.org/jira/browse/AMBARI-15864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15240101#comment-15240101 ] 

Hudson commented on AMBARI-15864:
---------------------------------

SUCCESS: Integrated in Ambari-branch-2.2 #630 (See [https://builds.apache.org/job/Ambari-branch-2.2/630/])
AMBARI-15864 - Re-Upgrade from 2.2 to 2.3+ Fails Due To Circular Symlink (jhurley: [http://git-wip-us.apache.org/repos/asf?p=ambari.git&a=commit&h=7763f4a14d4dfee0054d1bb32489caf4849a4fd9])
* ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_server.py
* ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py
* ambari-server/src/test/python/stacks/2.0.6/YARN/test_historyserver.py
* ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py


> Re-Upgrade from 2.2 to 2.3+ Fails Due To Circular Symlink
> ---------------------------------------------------------
>
>                 Key: AMBARI-15864
>                 URL: https://issues.apache.org/jira/browse/AMBARI-15864
>             Project: Ambari
>          Issue Type: Bug
>    Affects Versions: 2.2.0
>            Reporter: Jonathan Hurley
>            Assignee: Jonathan Hurley
>            Priority: Blocker
>             Fix For: 2.2.2
>
>         Attachments: AMBARI-15864.patch
>
>
> STR:
> # With Ambari 2.2.2.0-408 build, install 2.2.9.0 cluster (HA cluster)
> # Perform EU to 2.4.2.0-178 till finalize step
> # Downgrade back to 2.2.9
> # Again run EU to 2.4.2.0
> The problem is that the downgrade unlinks configurations, getting rid of {{conf.backup}} and makes {{/etc/<component>/conf}} a directory again. However, the only code which bootstraps {{conf.backup}} is executed on installation of the stack. That action does not happen again between U->D->U.
> As a way to catch this scenario, {{conf_select.select()}} tries to be smart and checks for {{/etc/<component>/conf}} as a directory and if it finds that it is, it will create {{conf.backup}}. *The bug here is that the new {{/etc/<component</conf}} link points to {{/usr/hdp/current/<component>/conf}} which is a link back to {{/etc/<component>/conf}}. It should be linked to {{/etc/<component>/conf.backup}} instead.*
> {code}
> Traceback (most recent call last):
>   File "/var/lib/ambari-agent/cache/common-services/YARN/2.1.0.2.0/package/scripts/nodemanager.py", line 153, in <module>
>     Nodemanager().execute()
>   File "/usr/lib/python2.6/site-packages/resource_management/libraries/script/script.py", line 219, in execute
>     method(env)
>   File "/var/lib/ambari-agent/cache/common-services/YARN/2.1.0.2.0/package/scripts/nodemanager.py", line 45, in stop
>     service('nodemanager',action='stop')
>   File "/usr/lib/python2.6/site-packages/ambari_commons/os_family_impl.py", line 89, in thunk
>     return fn(*args, **kwargs)
>   File "/var/lib/ambari-agent/cache/common-services/YARN/2.1.0.2.0/package/scripts/service.py", line 84, in service
>     Execute(daemon_cmd, user=usr)
>   File "/usr/lib/python2.6/site-packages/resource_management/core/base.py", line 154, in __init__
>     self.env.run()
>   File "/usr/lib/python2.6/site-packages/resource_management/core/environment.py", line 160, in run
>     self.run_action(resource, action)
>   File "/usr/lib/python2.6/site-packages/resource_management/core/environment.py", line 124, in run_action
>     provider_action()
>   File "/usr/lib/python2.6/site-packages/resource_management/core/providers/system.py", line 238, in action_run
>     tries=self.resource.tries, try_sleep=self.resource.try_sleep)
>   File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 70, in inner
>     result = function(command, **kwargs)
>   File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 92, in checked_call
>     tries=tries, try_sleep=try_sleep)
>   File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 140, in _call_wrapper
>     result = _call(command, **kwargs_copy)
>   File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 291, in _call
>     raise Fail(err_msg)
> resource_management.core.exceptions.Fail: Execution of 'export HADOOP_LIBEXEC_DIR=/usr/hdp/2.2.9.0-3393/hadoop/libexec && /usr/hdp/current/hadoop-yarn-nodemanager/sbin/yarn-daemon.sh --config /usr/hdp/2.2.9.0-3393/hadoop/conf stop nodemanager' returned 1. Error: Cannot find configuration directory: /usr/hdp/2.2.9.0-3393/hadoop/conf
> {code}



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