Repository: ambari Updated Branches: refs/heads/trunk a49d5a791 -> d09dd4ecc
AMBARI-10360. HS2 fails to start when databases exist with LOCATION's outside of hive.metastore.warehouse.dirs (dlysnichenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/97f18c04 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/97f18c04 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/97f18c04 Branch: refs/heads/trunk Commit: 97f18c046ea6a31491f9b3446560523192ce7b03 Parents: a49d5a7 Author: Lisnichenko Dmitro <[email protected]> Authored: Mon Apr 6 13:29:12 2015 +0300 Committer: Lisnichenko Dmitro <[email protected]> Committed: Mon Apr 6 13:29:12 2015 +0300 ---------------------------------------------------------------------- .../HIVE/0.12.0.2.0/package/scripts/hive_service.py | 12 +++++++----- .../test/python/stacks/2.0.6/HIVE/test_hive_server.py | 4 ---- 2 files changed, 7 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/97f18c04/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_service.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_service.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_service.py index 8c4093f..bbd9dee 100644 --- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_service.py +++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_service.py @@ -128,13 +128,15 @@ def hive_service(name, action='start', rolling_restart=False): def check_fs_root(): import params - fs_root_url = format("{fs_root}{hive_apps_whs_dir}") metatool_cmd = format("hive --config {hive_server_conf_dir} --service metatool") - cmd = as_user(format("{metatool_cmd} -listFSRoot 2>/dev/null", env={'PATH' : params.execute_path }), params.hive_user) + " | grep hdfs:// | grep -v '.db$'" + cmd = as_user(format("{metatool_cmd} -listFSRoot 2>/dev/null", env={'PATH': params.execute_path}), params.hive_user) \ + + format(" | grep hdfs:// | cut -f1,2,3 -d '/' | grep -v '{fs_root}' | head -1") code, out = shell.call(cmd) - if code == 0 and fs_root_url.strip() != out.strip(): - cmd = format("{metatool_cmd} -updateLocation {fs_root}{hive_apps_whs_dir} {out}") + + if code == 0 and out.strip() != "" and params.fs_root.strip() != out.strip(): + out = out.strip() + cmd = format("{metatool_cmd} -updateLocation {fs_root} {out}") Execute(cmd, user=params.hive_user, - environment= {'PATH' : params.execute_path } + environment={'PATH': params.execute_path} ) http://git-wip-us.apache.org/repos/asf/ambari/blob/97f18c04/ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py b/ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py index 24150a8..ddfff2f 100644 --- a/ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py +++ b/ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py @@ -57,10 +57,6 @@ class TestHiveServer(RMFTestCase): ) self.assert_configure_default() - self.assertResourceCalled('Execute', 'hive --config /etc/hive/conf.server --service metatool -updateLocation hdfs://c6401.ambari.apache.org:8020/apps/hive/warehouse ', - environment = {'PATH' : "/bin:/usr/lib/hive/bin:/usr/bin"}, - user = 'hive', - ) self.assertResourceCalled('Execute', '/tmp/start_hiveserver2_script /var/log/hive/hive-server2.out /var/log/hive/hive-server2.log /var/run/hive/hive-server.pid /etc/hive/conf.server /var/log/hive', not_if = 'ls /var/run/hive/hive-server.pid >/dev/null 2>&1 && ps -p `cat /var/run/hive/hive-server.pid` >/dev/null 2>&1', environment = {'HADOOP_HOME' : '/usr', 'JAVA_HOME':'/usr/jdk64/jdk1.7.0_45'},
