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)