소스 검색

AMBARI-13137. Phoenix Client package not installed on HDP 2.2 clusters (smohanty)

Sumit Mohanty 10 년 전
부모
커밋
abd3e5bd04

+ 2 - 1
ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py

@@ -106,9 +106,10 @@ regionserver_xmn_size = calc_xmn_from_xms(regionserver_heapsize, regionserver_xm
 
 
 phoenix_hosts = default('/clusterHostInfo/phoenix_query_server_hosts', [])
+phoenix_enabled = default('/configurations/hbase-env/phoenix_sql_enabled', False)
 has_phoenix = len(phoenix_hosts) > 0
 
-if not has_phoenix:
+if not has_phoenix and not phoenix_enabled:
   exclude_packages = ['phoenix*']
 else:
   exclude_packages = []

+ 27 - 0
ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py

@@ -28,6 +28,33 @@ class TestHBaseMaster(RMFTestCase):
   STACK_VERSION = "2.0.6"
   TMP_PATH = "/hadoop"
 
+  def test_install_hbase_master_default_no_phx(self):
+    self.executeScript(self.COMMON_SERVICES_PACKAGE_DIR + "/scripts/hbase_master.py",
+                       classname = "HbaseMaster",
+                       command = "install",
+                       config_file="hbase_no_phx.json",
+                       hdp_stack_version = self.STACK_VERSION,
+                       target = RMFTestCase.TARGET_COMMON_SERVICES,
+                       try_install=True
+    )
+    self.assertResourceCalled('Package', 'hbase_2_3_*',)
+
+    self.assertNoMoreResources()
+
+  def test_install_hbase_master_default_with_phx(self):
+    self.executeScript(self.COMMON_SERVICES_PACKAGE_DIR + "/scripts/hbase_master.py",
+                       classname = "HbaseMaster",
+                       command = "install",
+                       config_file="hbase_with_phx.json",
+                       hdp_stack_version = self.STACK_VERSION,
+                       target = RMFTestCase.TARGET_COMMON_SERVICES,
+                       try_install=True
+    )
+    self.assertResourceCalled('Package', 'hbase_2_3_*',)
+    self.assertResourceCalled('Package', 'phoenix_2_3_*',)
+
+    self.assertNoMoreResources()
+
   def test_configure_default(self):
     self.executeScript(self.COMMON_SERVICES_PACKAGE_DIR + "/scripts/hbase_master.py",
                    classname = "HbaseMaster",

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 204 - 0
ambari-server/src/test/python/stacks/2.0.6/configs/hbase_no_phx.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 204 - 0
ambari-server/src/test/python/stacks/2.0.6/configs/hbase_with_phx.json


이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.