You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by di...@apache.org on 2016/02/29 16:33:12 UTC
ambari git commit: AMBARI-15114: Parameterize distro-specific stack
information for HBASE (Juanjo Marron via dili)
Repository: ambari
Updated Branches:
refs/heads/AMBARI-13364 b3f886e13 -> e9741e0e6
AMBARI-15114: Parameterize distro-specific stack information for HBASE (Juanjo Marron via dili)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/e9741e0e
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/e9741e0e
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/e9741e0e
Branch: refs/heads/AMBARI-13364
Commit: e9741e0e6b6c0696fa06eea549d28df4795d2a7e
Parents: b3f886e
Author: Di Li <di...@apache.org>
Authored: Mon Feb 29 10:32:35 2016 -0500
Committer: Di Li <di...@apache.org>
Committed: Mon Feb 29 10:32:35 2016 -0500
----------------------------------------------------------------------
.../0.96.0.2.0/package/scripts/hbase_client.py | 5 +--
.../0.96.0.2.0/package/scripts/hbase_master.py | 3 +-
.../package/scripts/hbase_regionserver.py | 3 +-
.../0.96.0.2.0/package/scripts/params_linux.py | 34 +++++++++++---------
.../package/scripts/params_windows.py | 2 +-
.../package/scripts/phoenix_queryserver.py | 7 ++--
.../package/scripts/phoenix_service.py | 2 +-
.../0.96.0.2.0/package/scripts/service_check.py | 2 +-
.../package/scripts/setup_ranger_hbase.py | 6 ++--
.../0.96.0.2.0/package/scripts/status_params.py | 10 ++++--
.../HBASE/0.96.0.2.0/package/scripts/upgrade.py | 6 ++--
.../HDP/2.0.6/configuration/cluster-env.xml | 10 ++++++
12 files changed, 56 insertions(+), 34 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py
index ac34d40..28d7375 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py
@@ -51,13 +51,14 @@ class HbaseClientWindows(HbaseClient):
@OsFamilyImpl(os_family=OsFamilyImpl.DEFAULT)
class HbaseClientDefault(HbaseClient):
def get_stack_to_component(self):
- return {"HDP": "hbase-client"}
+ import params
+ return {params.stack_name: "hbase-client"}
def pre_upgrade_restart(self, env, upgrade_type=None):
import params
env.set_params(params)
- if params.version and compare_versions(format_hdp_stack_version(params.version), '2.2.0.0') >= 0:
+ if params.version and compare_versions(format_hdp_stack_version(params.version), params.stack_version_ru_support) >= 0:
conf_select.select(params.stack_name, "hbase", params.version)
hdp_select.select("hbase-client", params.version)
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_master.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_master.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_master.py
index 9515f61..5833773 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_master.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_master.py
@@ -71,7 +71,8 @@ class HbaseMasterWindows(HbaseMaster):
@OsFamilyImpl(os_family=OsFamilyImpl.DEFAULT)
class HbaseMasterDefault(HbaseMaster):
def get_stack_to_component(self):
- return {"HDP": "hbase-master"}
+ import params
+ return {params.stack_name: "hbase-master"}
def pre_upgrade_restart(self, env, upgrade_type=None):
import params
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_regionserver.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_regionserver.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_regionserver.py
index c17d219..37dd0a1 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_regionserver.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_regionserver.py
@@ -69,7 +69,8 @@ class HbaseRegionServerWindows(HbaseRegionServer):
@OsFamilyImpl(os_family=OsFamilyImpl.DEFAULT)
class HbaseRegionServerDefault(HbaseRegionServer):
def get_stack_to_component(self):
- return {"HDP": "hbase-regionserver"}
+ import params
+ return {params.stack_name: "hbase-regionserver"}
def pre_upgrade_restart(self, env, upgrade_type=None):
import params
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py
index 337f09d..2dfea19 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_linux.py
@@ -42,12 +42,16 @@ exec_tmp_dir = Script.get_tmp_dir()
sudo = AMBARI_SUDO_BINARY
stack_name = default("/hostLevelParams/stack_name", None)
+stack_dir = config['configurations']['cluster-env']['stack_dir']
version = default("/commandParams/version", None)
component_directory = status_params.component_directory
etc_prefix_dir = "/etc/hbase"
stack_version_unformatted = str(config['hostLevelParams']['stack_version'])
-hdp_stack_version = format_hdp_stack_version(stack_version_unformatted)
+stack_version_formatted = format_hdp_stack_version(stack_version_unformatted)
+stack_version_ru_support = config['configurations']['cluster-env']['stack_version_ru_support']
+stack_version_ranger_support = config['configurations']['cluster-env']['stack_version_ranger_support']
+stack_version_phoenix_support = config['configurations']['cluster-env']['stack_version_phoenix_support']
# hadoop default parameters
hadoop_bin_dir = hdp_select.get_hadoop_dir("bin")
@@ -58,19 +62,19 @@ region_drainer = "/usr/lib/hbase/bin/draining_servers.rb"
hbase_cmd = "/usr/lib/hbase/bin/hbase"
hbase_max_direct_memory_size = None
-# hadoop parameters for 2.2+
-if Script.is_hdp_stack_greater_or_equal("2.2"):
- daemon_script = format('/usr/hdp/current/hbase-client/bin/hbase-daemon.sh')
- region_mover = format('/usr/hdp/current/hbase-client/bin/region_mover.rb')
- region_drainer = format('/usr/hdp/current/hbase-client/bin/draining_servers.rb')
- hbase_cmd = format('/usr/hdp/current/hbase-client/bin/hbase')
+# hadoop parameters for stack_version_ru_support+
+if Script.is_hdp_stack_greater_or_equal(stack_version_ru_support):
+ daemon_script = format('{stack_dir}/current/hbase-client/bin/hbase-daemon.sh')
+ region_mover = format('{stack_dir}/current/hbase-client/bin/region_mover.rb')
+ region_drainer = format('{stack_dir}/current/hbase-client/bin/draining_servers.rb')
+ hbase_cmd = format('{stack_dir}/current/hbase-client/bin/hbase')
hbase_max_direct_memory_size = default('configurations/hbase-env/hbase_max_direct_memory_size', None)
- daemon_script=format("/usr/hdp/current/{component_directory}/bin/hbase-daemon.sh")
- region_mover = format("/usr/hdp/current/{component_directory}/bin/region_mover.rb")
- region_drainer = format("/usr/hdp/current/{component_directory}/bin/draining_servers.rb")
- hbase_cmd = format("/usr/hdp/current/{component_directory}/bin/hbase")
+ daemon_script=format("{stack_dir}/current/{component_directory}/bin/hbase-daemon.sh")
+ region_mover = format("{stack_dir}/current/{component_directory}/bin/region_mover.rb")
+ region_drainer = format("{stack_dir}/current/{component_directory}/bin/draining_servers.rb")
+ hbase_cmd = format("{stack_dir}/current/{component_directory}/bin/hbase")
hbase_conf_dir = status_params.hbase_conf_dir
@@ -80,7 +84,7 @@ hbase_user_nofile_limit = default("/configurations/hbase-env/hbase_user_nofile_l
hbase_user_nproc_limit = default("/configurations/hbase-env/hbase_user_nproc_limit", "16000")
# no symlink for phoenix-server at this point
-phx_daemon_script = '/usr/hdp/current/phoenix-server/bin/queryserver.py'
+phx_daemon_script = '{stack_dir}/current/phoenix-server/bin/queryserver.py'
hbase_excluded_hosts = config['commandParams']['excluded_hosts']
hbase_drain_only = default("/commandParams/mark_draining_only",False)
@@ -296,7 +300,7 @@ if has_ranger_admin:
downloaded_custom_connector = format("{exec_tmp_dir}/{jdbc_jar_name}")
driver_curl_source = format("{jdk_location}/{jdbc_symlink_name}")
- driver_curl_target = format("/usr/hdp/current/{component_directory}/lib/{jdbc_jar_name}")
+ driver_curl_target = format("{stack_dir}/current/{component_directory}/lib/{jdbc_jar_name}")
hbase_ranger_plugin_config = {
'username': repo_config_username,
@@ -336,11 +340,11 @@ if security_enabled:
hbase_coprocessor_master_classes = "org.apache.hadoop.hbase.security.access.AccessController"
hbase_coprocessor_regionserver_classes = "org.apache.hadoop.hbase.security.access.AccessController"
hbase_coprocessor_region_classes = "org.apache.hadoop.hbase.security.token.TokenProvider,org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint,org.apache.hadoop.hbase.security.access.AccessController"
- elif xml_configurations_supported: # HDP stack 2.3+ ranger plugin enabled
+ elif xml_configurations_supported: # stack_version_ranger_support+
hbase_coprocessor_master_classes = "org.apache.ranger.authorization.hbase.RangerAuthorizationCoprocessor "
hbase_coprocessor_regionserver_classes = "org.apache.ranger.authorization.hbase.RangerAuthorizationCoprocessor"
hbase_coprocessor_region_classes = "org.apache.hadoop.hbase.security.token.TokenProvider,org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint,org.apache.ranger.authorization.hbase.RangerAuthorizationCoprocessor"
- else: # HDP Stack 2.2 and less / ranger plugin enabled
+ else: # stack_version_ru_support and less / ranger plugin enabled
hbase_coprocessor_master_classes = "com.xasecure.authorization.hbase.XaSecureAuthorizationCoprocessor"
hbase_coprocessor_regionserver_classes = "com.xasecure.authorization.hbase.XaSecureAuthorizationCoprocessor"
hbase_coprocessor_region_classes = "org.apache.hadoop.hbase.security.token.TokenProvider,org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint,com.xasecure.authorization.hbase.XaSecureAuthorizationCoprocessor"
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_windows.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_windows.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_windows.py
index c132503..7d634cb 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_windows.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/params_windows.py
@@ -27,7 +27,7 @@ config = Script.get_config()
hbase_conf_dir = os.environ["HBASE_CONF_DIR"]
hbase_bin_dir = os.path.join(os.environ["HBASE_HOME"],'bin')
hbase_executable = os.path.join(hbase_bin_dir,"hbase.cmd")
-hdp_root = os.path.abspath(os.path.join(os.environ["HADOOP_HOME"],".."))
+stack_root = os.path.abspath(os.path.join(os.environ["HADOOP_HOME"],".."))
hadoop_user = config["configurations"]["cluster-env"]["hadoop.user.name"]
hbase_user = hadoop_user
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py
index 693bb08..a1723aa 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py
@@ -23,7 +23,7 @@ from resource_management.libraries.script import Script
from phoenix_service import phoenix_service
from hbase import hbase
-# Note: Phoenix Query Server is only applicable to HDP-2.3 and above.
+# Note: Phoenix Query Server is only applicable to stack_version_phoenix_support and above.
class PhoenixQueryServer(Script):
def install(self, env):
@@ -33,7 +33,8 @@ class PhoenixQueryServer(Script):
def get_stack_to_component(self):
- return {"HDP": "phoenix-server"}
+ import params
+ return {params.stack_name: "phoenix-server"}
def configure(self, env):
@@ -59,7 +60,7 @@ class PhoenixQueryServer(Script):
import params
env.set_params(params)
- if Script.is_hdp_stack_greater_or_equal("2.3"):
+ if Script.is_hdp_stack_greater_or_equal(params.stack_version_phoenix_support):
# phoenix uses hbase configs
conf_select.select(params.stack_name, "hbase", params.version)
hdp_select.select("phoenix-server", params.version)
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_service.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_service.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_service.py
index e155cec..33c880c 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_service.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_service.py
@@ -22,7 +22,7 @@ from resource_management.core.resources.system import Execute
from resource_management.core.resources.system import File
from resource_management.libraries.functions import check_process_status, format
-# Note: Phoenix Query Server is only applicable to HDP-2.3 and above.
+# Note: Phoenix Query Server is only applicable to stack_version_phoenix_support and above.
def phoenix_service(action = 'start'): # 'start', 'stop', 'status'
# Note: params/status_params should already be imported before calling phoenix_service()
pid_file = format("{pid_dir}/phoenix-{hbase_user}-server.pid")
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/service_check.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/service_check.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/service_check.py
index 97cdd32..6ecb58e 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/service_check.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/service_check.py
@@ -34,7 +34,7 @@ class HbaseServiceCheckWindows(HbaseServiceCheck):
def service_check(self, env):
import params
env.set_params(params)
- smoke_cmd = os.path.join(params.hdp_root, "Run-SmokeTests.cmd")
+ smoke_cmd = os.path.join(params.stack_root, "Run-SmokeTests.cmd")
service = "HBASE"
Execute(format("cmd /C {smoke_cmd} {service}"), user=params.hbase_user, logoutput=True)
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/setup_ranger_hbase.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/setup_ranger_hbase.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/setup_ranger_hbase.py
index 5c68583..ffd0715 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/setup_ranger_hbase.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/setup_ranger_hbase.py
@@ -29,10 +29,10 @@ def setup_ranger_hbase(upgrade_type=None):
else:
from resource_management.libraries.functions.setup_ranger_plugin import setup_ranger_plugin
- hdp_version = None
+ stack_version = None
if upgrade_type is not None:
- hdp_version = params.version
+ stack_version = params.version
if params.retryAble:
Logger.info("HBase: Setup ranger: command retry enables thus retrying if ranger admin is down !")
@@ -80,6 +80,6 @@ def setup_ranger_hbase(upgrade_type=None):
component_list=['hbase-client', 'hbase-master', 'hbase-regionserver'], audit_db_is_enabled=params.xa_audit_db_is_enabled,
credential_file=params.credential_file, xa_audit_db_password=params.xa_audit_db_password,
ssl_truststore_password=params.ssl_truststore_password, ssl_keystore_password=params.ssl_keystore_password,
- hdp_version_override = hdp_version, skip_if_rangeradmin_down= not params.retryAble)
+ stack_version_override = stack_version, skip_if_rangeradmin_down= not params.retryAble)
else:
Logger.info('Ranger admin not installed')
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/status_params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/status_params.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/status_params.py
index 014e8d7..ebb283e 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/status_params.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/status_params.py
@@ -25,7 +25,7 @@ from resource_management.libraries.functions import get_kinit_path
from resource_management.libraries.script.script import Script
# a map of the Ambari role to the component name
-# for use with /usr/hdp/current/<component>
+# for use with <stack_dir>/current/<component>
SERVER_ROLE_DIRECTORY_MAP = {
'HBASE_MASTER' : 'hbase-master',
'HBASE_REGIONSERVER' : 'hbase-regionserver',
@@ -49,7 +49,11 @@ else:
kinit_path_local = get_kinit_path(default('/configurations/kerberos-env/executable_search_paths', None))
tmp_dir = Script.get_tmp_dir()
+ # Stack related params
+ stack_version_ru_support = config['configurations']['cluster-env']['stack_version_ru_support']
+ stack_dir = config['configurations']['cluster-env']['stack_dir']
+
hbase_conf_dir = "/etc/hbase/conf"
limits_conf_dir = "/etc/security/limits.d"
- if Script.is_hdp_stack_greater_or_equal("2.2"):
- hbase_conf_dir = format("/usr/hdp/current/{component_directory}/conf")
\ No newline at end of file
+ if Script.is_hdp_stack_greater_or_equal(stack_version_ru_support):
+ hbase_conf_dir = format("{stack_dir}/current/{component_directory}/conf")
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py
index 00040fa..cf9f675 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py
@@ -26,12 +26,12 @@ from resource_management.libraries.functions import hdp_select
from resource_management.libraries.functions.version import compare_versions, format_hdp_stack_version
from resource_management.libraries.functions.decorator import retry
-def prestart(env, hdp_component):
+def prestart(env, stack_component):
import params
- if params.version and compare_versions(format_hdp_stack_version(params.version), '2.2.0.0') >= 0:
+ if params.version and compare_versions(format_hdp_stack_version(params.version), params.stack_version_ru_support) >= 0:
conf_select.select(params.stack_name, "hbase", params.version)
- hdp_select.select(hdp_component, params.version)
+ hdp_select.select(stack_component, params.version)
def post_regionserver(env):
import params
http://git-wip-us.apache.org/repos/asf/ambari/blob/e9741e0e/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
index aad3913..4c4b4a2 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
@@ -57,6 +57,16 @@
<description>Stack version from which hadoop-hdfs-nfs3 is supported</description>
</property>
<property>
+ <name>stack_version_ranger_support</name>
+ <value>2.3.0.0</value>
+ <description>Stack version from which ranger is supported</description>
+ </property>
+ <property>
+ <name>stack_version_phoenix_support</name>
+ <value>2.3.0.0</value>
+ <description>Stack version from which Phoenix Query Server is supported</description>
+ </property>
+ <property>
<name>stack_version_oozie_preconfiguration_support</name>
<value>2.3.0.0</value>
<description>Stack version from which oozie-server special case in the PRE-UPGRADE phase is supported</description>