You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by nc...@apache.org on 2015/06/09 01:33:22 UTC
ambari git commit: AMBARI-11800. RU: Hive upgrade failed when
conf.server is not available (ncole)
Repository: ambari
Updated Branches:
refs/heads/trunk 181699d2f -> b12b16cf3
AMBARI-11800. RU: Hive upgrade failed when conf.server is not available (ncole)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/b12b16cf
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/b12b16cf
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/b12b16cf
Branch: refs/heads/trunk
Commit: b12b16cf35d60acdc5ee1b8818340ede3ca3fe94
Parents: 181699d
Author: Nate Cole <nc...@hortonworks.com>
Authored: Mon Jun 8 17:36:21 2015 -0400
Committer: Nate Cole <nc...@hortonworks.com>
Committed: Mon Jun 8 19:16:05 2015 -0400
----------------------------------------------------------------------
.../package/scripts/hive_server_upgrade.py | 6 +++++
.../stacks/2.0.6/HIVE/test_hive_server.py | 23 ++++++++++++++++++++
2 files changed, 29 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/b12b16cf/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_upgrade.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_upgrade.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_upgrade.py
index 0b29d6f..d676304 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_upgrade.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_upgrade.py
@@ -17,6 +17,7 @@ limitations under the License.
"""
+import os
import re
from resource_management.core.logger import Logger
from resource_management.core.exceptions import Fail
@@ -49,6 +50,11 @@ def pre_upgrade_deregister():
if current_hiveserver_version is None:
raise Fail('Unable to determine the current HiveServer2 version to deregister.')
+ # fallback when upgrading because /usr/hdp/current/hive-server2/conf/conf.server may not exist
+ hive_server_conf_dir = params.hive_server_conf_dir
+ if not os.path.exists(hive_server_conf_dir):
+ hive_server_conf_dir = "/etc/hive/conf.server"
+
# deregister
command = format('hive --config {hive_server_conf_dir} --service hiveserver2 --deregister ' + current_hiveserver_version)
Execute(command, user=params.hive_user, path=params.execute_path, tries=1 )
http://git-wip-us.apache.org/repos/asf/ambari/blob/b12b16cf/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 5800bf1..fc97130 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
@@ -666,7 +666,10 @@ class TestHiveServer(RMFTestCase):
@patch("resource_management.libraries.functions.copy_tarball.copy_to_hdfs")
@patch.object(Script, "is_hdp_stack_greater_or_equal", new = MagicMock(return_value=True))
+ @patch("os.path.exists", new = MagicMock(return_value=True))
+ @patch("platform.linux_distribution", new = MagicMock(return_value="Linux"))
def test_stop_during_upgrade(self, copy_to_hdfs_mock):
+
call_side_effects = [(0, "hive-server2 - 2.2.0.0-2041"), (0, "hive-server2 - 2.2.0.0-2041")] * 4
copy_to_hdfs_mock.return_value = True
@@ -683,6 +686,26 @@ class TestHiveServer(RMFTestCase):
self.assertResourceCalled('Execute', 'hdp-select set hive-server2 2.2.1.0-2065',)
+ @patch("resource_management.libraries.functions.copy_tarball.copy_to_hdfs")
+ @patch.object(Script, "is_hdp_stack_greater_or_equal", new = MagicMock(return_value=True))
+ def test_stop_during_upgrade_with_default_conf_server(self, copy_to_hdfs_mock):
+
+ call_side_effects = [(0, "hive-server2 - 2.2.0.0-2041"), (0, "hive-server2 - 2.2.0.0-2041")] * 4
+ copy_to_hdfs_mock.return_value = True
+
+ self.executeScript(self.COMMON_SERVICES_PACKAGE_DIR + "/scripts/hive_server.py",
+ classname = "HiveServer", command = "restart", config_file = "hive-upgrade.json",
+ hdp_stack_version = self.UPGRADE_STACK_VERSION,
+ target = RMFTestCase.TARGET_COMMON_SERVICES,
+ call_mocks = call_side_effects
+ )
+
+ self.assertResourceCalled('Execute', 'hive --config /etc/hive/conf.server --service hiveserver2 --deregister 2.2.0.0-2041',
+ path=['/bin:/usr/hdp/current/hive-server2/bin:/usr/hdp/current/hadoop-client/bin'],
+ tries=1, user='hive')
+
+ self.assertResourceCalled('Execute', 'hdp-select set hive-server2 2.2.1.0-2065',)
+
def test_stop_during_upgrade_bad_hive_version(self):
try:
self.executeScript(self.COMMON_SERVICES_PACKAGE_DIR + "/scripts/hive_server.py",