Our Community is getting an upgrade! To get everything ready for the relaunch, we’ll be placing the site in read-only mode starting September 21st.
We really appreciate your understanding while we get things set up behind the scenes. Catch up on all the exciting details about the move here.
Need help or have questions? Drop us a line at [email protected]
Created on 01-02-2017 03:47 PM
SYMPTOM
While adding new service to the HDP cluster, it fails with below error:
Traceback (most recent call last):
File "/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/hook.py", line 37, in <module>
AfterInstallHook().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/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/hook.py", line 31, in hook
setup_hdp_symlinks()
File "/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py", line 49, in setup_hdp_symlinks
hdp_select.select_all(version)
File "/usr/lib/python2.6/site-packages/resource_management/libraries/functions/hdp_select.py", line 122, in select_all
Execute(command, only_if = only_if_command)
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 'ambari-sudo.sh /usr/bin/hdp-select set all `ambari-python-wrap /usr/bin/hdp-select versions | grep ^2.4.2.0-258 | tail -1`' returned 1. Traceback (most recent call last):
File "/usr/bin/hdp-select", line 382, in <module>
printVersions()
File "/usr/bin/hdp-select", line 239, in printVersions
result[tuple(map(int, versionRegex.split(f)))] = f
ValueError: invalid literal for int() with base 10: 'smartsense'
ERROR: set command takes 2 parameters, instead of 1
usage: hdp-select [-h] [<command>] [<package>] [<version>]
Set the selected version of HDP.
positional arguments:
<command> One of set, status, versions, or packages
<package> the package name to set
<version> the HDP version to set
optional arguments:
-h, --help show this help message and exit
-r, --rpm-mode if true checks if there is symlink exists and creates the symlink if it doesn't
Commands:
set : set the package to a specified version
status : show the version of the package
versions : show the currently installed versions
packages : show the individual package names.
ROOT CAUSE
There is an extra unwanted directory under /usr/hdp on Ambari server
Please see below output:
[root@prodnode1 hdp]# ls -lrt /usr/hdp/ total 16 drwxr-xr-x. 19 root root 4096 Sep 26 08:31 2.4.2.0-258 drwxr-xr-x. 2 root root 4096 Nov 21 13:28 current drwxr-xr-x. 2 root root 4096 Jan 2 15:37 smartsense drwxr-xr-x. 3 root root 4096 Jan 2 15:39 share [root@prodnode1 hdp]#
Note - It's not recommended to put any directory under /usr/hdp/ except 'share', 'current', 'versioned directory'
.
RESOLUTION
Move /usr/hdp/<unwanted-directory> to some other location than '/usr/hdp'
See below output:
#Before moving directory
[root@prodnode1 hdp]# hdp-select versions
Traceback (most recent call last):
File "/usr/bin/hdp-select", line 382, in <module>
printVersions()
File "/usr/bin/hdp-select", line 239, in printVersions
result[tuple(map(int, versionRegex.split(f)))] = f
ValueError: invalid literal for int() with base 10: 'smartsense'
[root@prodnode1 hdp]#
#Move directory outside
[root@prodnode1 hdp]# mv /usr/hdp/smartsense/ /root/
[root@prodnode1 hdp]#
#After moving directory
[root@prodnode1 hdp]# hdp-select versions
2.4.2.0-258.
Created on 01-06-2017 05:22 PM
Do you know /usr/hdp/smartsense directory is created by the service or manually created?