[
https://issues.apache.org/jira/browse/AMBARI-15864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15240208#comment-15240208
]
Hudson commented on AMBARI-15864:
---------------------------------
FAILURE: Integrated in Ambari-trunk-Commit #4650 (See
[https://builds.apache.org/job/Ambari-trunk-Commit/4650/])
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=085b1c0a74c40afc44b970c259f7f33e68dd7621])
*
ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py
* ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_server.py
* ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py
* ambari-server/src/test/python/stacks/2.0.6/YARN/test_historyserver.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)