ambari git commit: AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)

2015-10-16 Thread jluniya
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 61bf60bb7 -> 39b8e5fa4


AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/39b8e5fa
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/39b8e5fa
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/39b8e5fa

Branch: refs/heads/branch-2.1
Commit: 39b8e5fa46d29a375981fd225b3c9102d5d6dade
Parents: 61bf60b
Author: Jayush Luniya 
Authored: Fri Oct 16 11:30:38 2015 -0700
Committer: Jayush Luniya 
Committed: Fri Oct 16 11:31:44 2015 -0700

--
 .../libraries/functions/decorator.py|  5 ++--
 .../libraries/functions/namenode_ha_utils.py| 27 ++--
 .../python/stacks/2.0.6/HDFS/test_namenode.py   | 17 +++-
 3 files changed, 44 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/39b8e5fa/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
--
diff --git 
a/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
 
b/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
index cd653e5..1b45981 100644
--- 
a/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
+++ 
b/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
@@ -26,7 +26,7 @@ __all__ = ['retry', ]
 from resource_management.core.logger import Logger
 
 
-def retry(times=3, sleep_time=1, backoff_factor=1, err_class=Exception):
+def retry(times=3, sleep_time=1, max_sleep_time=8, backoff_factor=1, 
err_class=Exception):
   """
   Retry decorator for improved robustness of functions.
   :param times: Number of times to attempt to call the function.
@@ -44,12 +44,13 @@ def retry(times=3, sleep_time=1, backoff_factor=1, 
err_class=Exception):
 
   while _times > 1:
 _times -= 1
-_sleep_time *= _backoff_factor
 try:
   return function(*args, **kwargs)
 except _err_class, err:
   Logger.info("Will retry %d time(s), caught exception: %s. Sleeping 
for %d sec(s)" % (_times, str(err), _sleep_time))
   time.sleep(_sleep_time)
+if(_sleep_time * _backoff_factor <= max_sleep_time):
+  _sleep_time *= _backoff_factor
 
   return function(*args, **kwargs)
 return wrapper

http://git-wip-us.apache.org/repos/asf/ambari/blob/39b8e5fa/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
--
diff --git 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
index 99f90b8..0920e85 100644
--- 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
+++ 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
@@ -23,6 +23,8 @@ from resource_management.libraries.functions.format import 
format
 from resource_management.libraries.functions.jmx import get_value_from_jmx
 from resource_management.core.base import Fail
 from resource_management.core import shell
+from resource_management.core.logger import Logger
+from resource_management.libraries.functions.decorator import retry
 
 __all__ = ["get_namenode_states", "get_active_namenode", 
"get_property_for_active_namenode"]
 
@@ -32,8 +34,29 @@ HDFS_NN_STATE_STANDBY = 'standby'
 NAMENODE_HTTP_FRAGMENT = 'dfs.namenode.http-address.{0}.{1}'
 NAMENODE_HTTPS_FRAGMENT = 'dfs.namenode.https-address.{0}.{1}'
 JMX_URI_FRAGMENT = 
"{0}://{1}/jmx?qry=Hadoop:service=NameNode,name=FSNamesystem"
-  
-def get_namenode_states(hdfs_site, security_enabled, run_user):
+
+def get_namenode_states(hdfs_site, security_enabled, run_user, times=10, 
sleep_time=1, backoff_factor=2):
+  """
+  return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
+  """
+  @retry(times=times, sleep_time=sleep_time, backoff_factor=backoff_factor, 
err_class=Fail)
+  def doRetries(hdfs_site, security_enabled, run_user):
+doRetries.attempt += 1
+active_namenodes, standby_namenodes, unknown_namenodes = 
get_namenode_states_noretries(hdfs_site, security_enabled, run_user)
+Logger.info(
+  "NameNode HA states: active_namenodes = {0}, standby_namenodes = {1}, 
unknown_namenodes = {2}".format(
+active_namenodes, standby_namenodes, unknown_namenodes))
+if active_namenodes:
+  return active_namenodes, standby_namenodes, unknown_namenodes
+elif 

ambari git commit: AMBARI-13418. Stop-and-Start Upgrade: Upgrade START call cannot find upgrade pack to use (alejandro)

2015-10-16 Thread alejandro
Repository: ambari
Updated Branches:
  refs/heads/trunk 3318eb682 -> 1d61e6662


AMBARI-13418. Stop-and-Start Upgrade: Upgrade START call cannot find upgrade 
pack to use (alejandro)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/1d61e666
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/1d61e666
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/1d61e666

Branch: refs/heads/trunk
Commit: 1d61e6662942902c721df03b306ef02fd958a1f1
Parents: 3318eb6
Author: Alejandro Fernandez 
Authored: Fri Oct 16 11:58:54 2015 -0700
Committer: Alejandro Fernandez 
Committed: Fri Oct 16 11:58:54 2015 -0700

--
 .../java/org/apache/ambari/server/state/UpgradeHelperTest.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/1d61e666/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
--
diff --git 
a/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
 
b/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
index 77595a3..1cc67ef 100644
--- 
a/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
+++ 
b/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
@@ -160,7 +160,7 @@ public class UpgradeHelperTest {
 
 makeCluster();
 try {
-  String preferredUpgradePackName = null;
+  String preferredUpgradePackName = "upgrade_test";
   UpgradePack up = m_upgradeHelper.suggestUpgradePack(clusterName, 
upgradeFromVersion, upgradeToVersion, upgradeDirection, upgradeType, 
preferredUpgradePackName);
   assertEquals(upgradeType, up.getType());
 } catch (AmbariException e){



ambari git commit: AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)

2015-10-16 Thread jluniya
Repository: ambari
Updated Branches:
  refs/heads/trunk dec7c8eed -> 3318eb682


AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/3318eb68
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/3318eb68
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/3318eb68

Branch: refs/heads/trunk
Commit: 3318eb682611fffbe817815cdffdf6aca2aacfa2
Parents: dec7c8e
Author: Jayush Luniya 
Authored: Fri Oct 16 11:30:38 2015 -0700
Committer: Jayush Luniya 
Committed: Fri Oct 16 11:30:38 2015 -0700

--
 .../libraries/functions/decorator.py|  5 ++--
 .../libraries/functions/namenode_ha_utils.py| 27 ++--
 .../python/stacks/2.0.6/HDFS/test_namenode.py   | 17 +++-
 3 files changed, 44 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/3318eb68/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
--
diff --git 
a/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
 
b/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
index cd653e5..1b45981 100644
--- 
a/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
+++ 
b/ambari-common/src/main/python/resource_management/libraries/functions/decorator.py
@@ -26,7 +26,7 @@ __all__ = ['retry', ]
 from resource_management.core.logger import Logger
 
 
-def retry(times=3, sleep_time=1, backoff_factor=1, err_class=Exception):
+def retry(times=3, sleep_time=1, max_sleep_time=8, backoff_factor=1, 
err_class=Exception):
   """
   Retry decorator for improved robustness of functions.
   :param times: Number of times to attempt to call the function.
@@ -44,12 +44,13 @@ def retry(times=3, sleep_time=1, backoff_factor=1, 
err_class=Exception):
 
   while _times > 1:
 _times -= 1
-_sleep_time *= _backoff_factor
 try:
   return function(*args, **kwargs)
 except _err_class, err:
   Logger.info("Will retry %d time(s), caught exception: %s. Sleeping 
for %d sec(s)" % (_times, str(err), _sleep_time))
   time.sleep(_sleep_time)
+if(_sleep_time * _backoff_factor <= max_sleep_time):
+  _sleep_time *= _backoff_factor
 
   return function(*args, **kwargs)
 return wrapper

http://git-wip-us.apache.org/repos/asf/ambari/blob/3318eb68/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
--
diff --git 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
index 99f90b8..0920e85 100644
--- 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
+++ 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
@@ -23,6 +23,8 @@ from resource_management.libraries.functions.format import 
format
 from resource_management.libraries.functions.jmx import get_value_from_jmx
 from resource_management.core.base import Fail
 from resource_management.core import shell
+from resource_management.core.logger import Logger
+from resource_management.libraries.functions.decorator import retry
 
 __all__ = ["get_namenode_states", "get_active_namenode", 
"get_property_for_active_namenode"]
 
@@ -32,8 +34,29 @@ HDFS_NN_STATE_STANDBY = 'standby'
 NAMENODE_HTTP_FRAGMENT = 'dfs.namenode.http-address.{0}.{1}'
 NAMENODE_HTTPS_FRAGMENT = 'dfs.namenode.https-address.{0}.{1}'
 JMX_URI_FRAGMENT = 
"{0}://{1}/jmx?qry=Hadoop:service=NameNode,name=FSNamesystem"
-  
-def get_namenode_states(hdfs_site, security_enabled, run_user):
+
+def get_namenode_states(hdfs_site, security_enabled, run_user, times=10, 
sleep_time=1, backoff_factor=2):
+  """
+  return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
+  """
+  @retry(times=times, sleep_time=sleep_time, backoff_factor=backoff_factor, 
err_class=Fail)
+  def doRetries(hdfs_site, security_enabled, run_user):
+doRetries.attempt += 1
+active_namenodes, standby_namenodes, unknown_namenodes = 
get_namenode_states_noretries(hdfs_site, security_enabled, run_user)
+Logger.info(
+  "NameNode HA states: active_namenodes = {0}, standby_namenodes = {1}, 
unknown_namenodes = {2}".format(
+active_namenodes, standby_namenodes, unknown_namenodes))
+if active_namenodes:
+  return active_namenodes, standby_namenodes, unknown_namenodes
+elif 

ambari git commit: AMBARI-13455. Ambari QE Deploy Test - Kerberos service check fails. Additional changes. (akovalenko)

2015-10-16 Thread akovalenko
Repository: ambari
Updated Branches:
  refs/heads/trunk 1d61e6662 -> 4023dcf9e


AMBARI-13455. Ambari QE Deploy Test - Kerberos service check fails. Additional 
changes. (akovalenko)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/4023dcf9
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/4023dcf9
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/4023dcf9

Branch: refs/heads/trunk
Commit: 4023dcf9ece78995fde9dbb2e70644489aaad01f
Parents: 1d61e66
Author: Aleksandr Kovalenko 
Authored: Fri Oct 16 22:18:37 2015 +0300
Committer: Aleksandr Kovalenko 
Committed: Fri Oct 16 22:19:27 2015 +0300

--
 .../main/admin/kerberos/wizard_controller.js| 16 
 1 file changed, 16 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/4023dcf9/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
--
diff --git 
a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js 
b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
index cb7ae74..4541914 100644
--- a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
+++ b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
@@ -263,22 +263,6 @@ App.KerberosWizardController = 
App.WizardController.extend(App.InstallComponent,
 }, this);
   }
 }
-  },
-  {
-type: 'async',
-callback: function() {
-  var self = this;
-  var dfd = $.Deferred();
-  if (App.get('supports.storeKDCCredentials')) {
-
credentialsUtils.isStorePersisted(App.get('clusterName')).then(function(isPersisted)
 {
-  self.set('content.secureStoragePersisted', isPersisted);
-  dfd.resolve();
-});
-  } else {
-dfd.resolve();
-  }
-  return dfd.promise();
-}
   }
 ],
 '3': [



ambari git commit: AMBARI-13418. Stop-and-Start Upgrade: Upgrade START call cannot find upgrade pack to use (alejandro)

2015-10-16 Thread alejandro
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 39b8e5fa4 -> d64e148b2


AMBARI-13418. Stop-and-Start Upgrade: Upgrade START call cannot find upgrade 
pack to use (alejandro)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/d64e148b
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/d64e148b
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/d64e148b

Branch: refs/heads/branch-2.1
Commit: d64e148b212e72300b9c9a7810d011970ffe8ec6
Parents: 39b8e5f
Author: Alejandro Fernandez 
Authored: Fri Oct 16 12:17:02 2015 -0700
Committer: Alejandro Fernandez 
Committed: Fri Oct 16 12:17:02 2015 -0700

--
 .../java/org/apache/ambari/server/state/UpgradeHelperTest.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/d64e148b/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
--
diff --git 
a/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
 
b/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
index 2e25233..6099e16 100644
--- 
a/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
+++ 
b/ambari-server/src/test/java/org/apache/ambari/server/state/UpgradeHelperTest.java
@@ -160,7 +160,7 @@ public class UpgradeHelperTest {
 
 makeCluster();
 try {
-  String preferredUpgradePackName = null;
+  String preferredUpgradePackName = "upgrade_test";
   UpgradePack up = m_upgradeHelper.suggestUpgradePack(clusterName, 
upgradeFromVersion, upgradeToVersion, upgradeDirection, upgradeType, 
preferredUpgradePackName);
   assertEquals(upgradeType, up.getType());
 } catch (AmbariException e){



ambari git commit: AMBARI-13459 - Hive Metastore Upgrade Retry Fails Because Of Driver Copy Issue (jonathanhurley)

2015-10-16 Thread jonathanhurley
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1.2 8a800741e -> 79dc49ae0


AMBARI-13459 - Hive Metastore Upgrade Retry Fails Because Of Driver Copy Issue 
(jonathanhurley)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/79dc49ae
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/79dc49ae
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/79dc49ae

Branch: refs/heads/branch-2.1.2
Commit: 79dc49ae03d7c59568e445261132ae52ace8f719
Parents: 8a80074
Author: Jonathan Hurley 
Authored: Fri Oct 16 14:09:26 2015 -0400
Committer: Jonathan Hurley 
Committed: Fri Oct 16 16:08:51 2015 -0400

--
 .../package/scripts/hive_metastore.py   | 30 +---
 .../stacks/2.1/HIVE/test_hive_metastore.py  |  8 --
 2 files changed, 24 insertions(+), 14 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/79dc49ae/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
--
diff --git 
a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
 
b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
index 796ec18..8a3833b 100644
--- 
a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
+++ 
b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
@@ -33,7 +33,6 @@ from resource_management.libraries.functions.security_commons 
import get_params_
 from resource_management.libraries.functions.security_commons import 
validate_security_config_properties
 from resource_management.libraries.functions.security_commons import 
FILE_TYPE_XML
 from resource_management.core.resources.system import File
-from resource_management.core.shell import as_sudo
 
 from hive import hive
 from hive import jdbc_connector
@@ -155,7 +154,7 @@ class HiveMetastoreDefault(HiveMetastore):
 """
 Executes the schema upgrade binary.  This is its own function because it 
could
 be called as a standalone task from the upgrade pack, but is safe to run 
it for each
-metastore instance.
+metastore instance. The schema upgrade on an already upgraded metastore is 
a NOOP.
 
 The metastore schema upgrade requires a database driver library for most
 databases. During an upgrade, it's possible that the library is not 
present,
@@ -173,28 +172,36 @@ class HiveMetastoreDefault(HiveMetastore):
 # present, then download it first
 if params.hive_jdbc_driver in params.hive_jdbc_drivers_list and 
params.hive_use_existing_db:
   target_directory = format("/usr/hdp/{version}/hive/lib")
-  if not os.path.exists(params.target):
-# download it
+
+  # normally, the JDBC driver would be referenced by 
/usr/hdp/current/.../foo.jar
+  # but if hdp-select is called and the restart fails, then this means 
that current pointer
+  # is now pointing to the upgraded version location; that's bad for the 
cp command
+  source_jdbc_file = format(params.target.replace("/usr/hdp/current", 
"/usr/hdp/{current_version}"))
+
+  # download it if it does not exist
+  if not os.path.exists(source_jdbc_file):
 jdbc_connector()
 
+  target_directory_and_filename = os.path.join(target_directory, 
os.path.basename(source_jdbc_file))
+
   if params.sqla_db_used:
 target_native_libs_directory = 
format("{target_directory}/native/lib64")
 
 Execute(format("yes | {sudo} cp {jars_in_hive_lib} 
{target_directory}"))
 
-Directory(target_native_libs_directory,
-  recursive=True)
+Directory(target_native_libs_directory, recursive=True)
 
 Execute(format("yes | {sudo} cp {libs_in_hive_lib} 
{target_native_libs_directory}"))
 
 Execute(format("{sudo} chown -R {hive_user}:{user_group} 
{hive_lib}/*"))
   else:
-Execute(('cp', params.target, target_directory),
-path=["/bin", "/usr/bin/"], sudo = True)
+# copy the JDBC driver from the older metastore location to the new 
location only
+# if it does not already exist
+if not os.path.exists(target_directory_and_filename):
+  Execute(('cp', source_jdbc_file, target_directory),
+path=["/bin", "/usr/bin/"], sudo = True)
 
-  File(os.path.join(target_directory, os.path.basename(params.target)),
-mode = 0644,
-  )
+  File(target_directory_and_filename, mode = 0644)
 
 # build the schema tool command
 binary = format("/usr/hdp/{version}/hive/bin/schematool")
@@ -215,5 +222,6 @@ class HiveMetastoreDefault(HiveMetastore):

ambari git commit: AMBARI-13457: RU API Enhancement: Add handsfree execution mode (jluniya)

2015-10-16 Thread jluniya
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 f6cc06824 -> 5af5f737a


AMBARI-13457: RU API Enhancement: Add handsfree execution mode (jluniya)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/5af5f737
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/5af5f737
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/5af5f737

Branch: refs/heads/branch-2.1
Commit: 5af5f737a8da333fd978c30a5a3f57e79960824c
Parents: f6cc068
Author: Jayush Luniya 
Authored: Fri Oct 16 14:53:41 2015 -0700
Committer: Jayush Luniya 
Committed: Fri Oct 16 14:55:53 2015 -0700

--
 .../internal/UpgradeResourceProvider.java   |  30 +++--
 .../ambari/server/state/UpgradeContext.java |  25 +++-
 .../internal/UpgradeResourceProviderTest.java   | 122 ++-
 3 files changed, 165 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/5af5f737/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
--
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
index a31f805..27e3377 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
@@ -141,6 +141,11 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
*/
   protected static final String UPGRADE_SKIP_SC_FAILURES = 
"Upgrade/skip_service_check_failures";
 
+  /**
+   * Skip manual verification tasks for hands-free upgrade/downgrade 
experience.
+   */
+  protected static final String UPGRADE_SKIP_MANUAL_VERIFICATION = 
"Upgrade/skip_manual_verification";
+
   /*
* Lifted from RequestResourceProvider
*/
@@ -237,6 +242,7 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
 PROPERTY_IDS.add(UPGRADE_DIRECTION);
 PROPERTY_IDS.add(UPGRADE_SKIP_FAILURES);
 PROPERTY_IDS.add(UPGRADE_SKIP_SC_FAILURES);
+PROPERTY_IDS.add(UPGRADE_SKIP_MANUAL_VERIFICATION);
 PROPERTY_IDS.add(UPGRADE_SKIP_PREREQUISITE_CHECKS);
 PROPERTY_IDS.add(UPGRADE_FAIL_ON_CHECK_WARNINGS);
 
@@ -475,8 +481,6 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
 String clusterName = (String) requestMap.get(UPGRADE_CLUSTER_NAME);
 String version = (String) requestMap.get(UPGRADE_VERSION);
 String versionForUpgradePack = (String) 
requestMap.get(UPGRADE_FROM_VERSION);
-boolean skipPrereqChecks = Boolean.parseBoolean((String) 
requestMap.get(UPGRADE_SKIP_PREREQUISITE_CHECKS));
-boolean failOnCheckWarnings = Boolean.parseBoolean((String) 
requestMap.get(UPGRADE_FAIL_ON_CHECK_WARNINGS));
 
 /**
  * For the unit tests tests, there are multiple upgrade packs for the same 
type, so
@@ -685,8 +689,14 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
   (String) requestMap.get(UPGRADE_SKIP_SC_FAILURES));
 }
 
+boolean skipManualVerification = false;
+if(requestMap.containsKey(UPGRADE_SKIP_MANUAL_VERIFICATION)) {
+  skipManualVerification = Boolean.parseBoolean((String) 
requestMap.get(UPGRADE_SKIP_MANUAL_VERIFICATION));
+}
+
 ctx.setAutoSkipComponentFailures(skipComponentFailures);
 ctx.setAutoSkipServiceCheckFailures(skipServiceCheckFailures);
+ctx.setAutoSkipManualVerification(skipManualVerification);
 
 List groups = s_upgradeHelper.createSequence(pack, 
ctx);
 
@@ -732,14 +742,10 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
 }
 
 for (UpgradeGroupHolder group : groups) {
-  UpgradeGroupEntity groupEntity = new UpgradeGroupEntity();
-  groupEntity.setName(group.name);
-  groupEntity.setTitle(group.title);
   boolean skippable = group.skippable;
   boolean allowRetry = group.allowRetry;
 
   List itemEntities = new 
ArrayList();
-
   for (StageWrapper wrapper : group.items) {
 if (wrapper.getType() == StageWrapper.Type.SERVER_SIDE_ACTION) {
   // !!! each stage is guaranteed to be of one type. but because there
@@ -747,6 +753,9 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
   // the same host, break them out into individual stages.
   for (TaskWrapper taskWrapper : wrapper.getTasks()) {
 for (Task task : taskWrapper.getTasks()) {
+  if(ctx.isManualVerificationAutoSkipped() && 

ambari git commit: AMBARI-13457: RU API Enhancement: Add handsfree execution mode (jluniya)

2015-10-16 Thread jluniya
Repository: ambari
Updated Branches:
  refs/heads/trunk d8d19268a -> f6ff71b8c


AMBARI-13457: RU API Enhancement: Add handsfree execution mode (jluniya)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/f6ff71b8
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/f6ff71b8
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/f6ff71b8

Branch: refs/heads/trunk
Commit: f6ff71b8cb4d9d2b5dc0acd98eb8d27865302cc8
Parents: d8d1926
Author: Jayush Luniya 
Authored: Fri Oct 16 14:53:41 2015 -0700
Committer: Jayush Luniya 
Committed: Fri Oct 16 14:53:41 2015 -0700

--
 .../internal/UpgradeResourceProvider.java   |  30 +++--
 .../ambari/server/state/UpgradeContext.java |  25 +++-
 .../internal/UpgradeResourceProviderTest.java   | 123 ++-
 3 files changed, 165 insertions(+), 13 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/f6ff71b8/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
--
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
index 109f29b..3a52025 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
@@ -139,6 +139,11 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
*/
   protected static final String UPGRADE_SKIP_SC_FAILURES = 
"Upgrade/skip_service_check_failures";
 
+  /**
+   * Skip manual verification tasks for hands-free upgrade/downgrade 
experience.
+   */
+  protected static final String UPGRADE_SKIP_MANUAL_VERIFICATION = 
"Upgrade/skip_manual_verification";
+
   /*
* Lifted from RequestResourceProvider
*/
@@ -235,6 +240,7 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
 PROPERTY_IDS.add(UPGRADE_DIRECTION);
 PROPERTY_IDS.add(UPGRADE_SKIP_FAILURES);
 PROPERTY_IDS.add(UPGRADE_SKIP_SC_FAILURES);
+PROPERTY_IDS.add(UPGRADE_SKIP_MANUAL_VERIFICATION);
 PROPERTY_IDS.add(UPGRADE_SKIP_PREREQUISITE_CHECKS);
 PROPERTY_IDS.add(UPGRADE_FAIL_ON_CHECK_WARNINGS);
 
@@ -473,8 +479,6 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
 String clusterName = (String) requestMap.get(UPGRADE_CLUSTER_NAME);
 String version = (String) requestMap.get(UPGRADE_VERSION);
 String versionForUpgradePack = (String) 
requestMap.get(UPGRADE_FROM_VERSION);
-boolean skipPrereqChecks = Boolean.parseBoolean((String) 
requestMap.get(UPGRADE_SKIP_PREREQUISITE_CHECKS));
-boolean failOnCheckWarnings = Boolean.parseBoolean((String) 
requestMap.get(UPGRADE_FAIL_ON_CHECK_WARNINGS));
 
 /**
  * For the unit tests tests, there are multiple upgrade packs for the same 
type, so
@@ -683,8 +687,14 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
   (String) requestMap.get(UPGRADE_SKIP_SC_FAILURES));
 }
 
+boolean skipManualVerification = false;
+if(requestMap.containsKey(UPGRADE_SKIP_MANUAL_VERIFICATION)) {
+  skipManualVerification = Boolean.parseBoolean((String) 
requestMap.get(UPGRADE_SKIP_MANUAL_VERIFICATION));
+}
+
 ctx.setAutoSkipComponentFailures(skipComponentFailures);
 ctx.setAutoSkipServiceCheckFailures(skipServiceCheckFailures);
+ctx.setAutoSkipManualVerification(skipManualVerification);
 
 List groups = s_upgradeHelper.createSequence(pack, 
ctx);
 
@@ -730,14 +740,10 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
 }
 
 for (UpgradeGroupHolder group : groups) {
-  UpgradeGroupEntity groupEntity = new UpgradeGroupEntity();
-  groupEntity.setName(group.name);
-  groupEntity.setTitle(group.title);
   boolean skippable = group.skippable;
   boolean allowRetry = group.allowRetry;
 
   List itemEntities = new 
ArrayList();
-
   for (StageWrapper wrapper : group.items) {
 if (wrapper.getType() == StageWrapper.Type.SERVER_SIDE_ACTION) {
   // !!! each stage is guaranteed to be of one type. but because there
@@ -745,6 +751,9 @@ public class UpgradeResourceProvider extends 
AbstractControllerResourceProvider
   // the same host, break them out into individual stages.
   for (TaskWrapper taskWrapper : wrapper.getTasks()) {
 for (Task task : taskWrapper.getTasks()) {
+  if(ctx.isManualVerificationAutoSkipped() && 

[2/2] ambari git commit: AMBARI-13434. Expose Alert Grace Period Setting in Agents (aonishuk)

2015-10-16 Thread aonishuk
AMBARI-13434. Expose Alert Grace Period Setting in Agents (aonishuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/86431d52
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/86431d52
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/86431d52

Branch: refs/heads/branch-2.1
Commit: 86431d5215a3441e8bdbadaca4d360d88ed2d3dc
Parents: 119a50f
Author: Andrew Onishuk 
Authored: Fri Oct 16 13:07:44 2015 +0300
Committer: Andrew Onishuk 
Committed: Fri Oct 16 13:07:44 2015 +0300

--
 ambari-agent/conf/unix/ambari-agent.ini |  1 +
 ambari-agent/conf/windows/ambari-agent.ini  |  1 +
 .../ambari_agent/AlertSchedulerHandler.py   | 21 ++-
 .../src/main/python/ambari_agent/Controller.py  |  4 +++-
 .../ambari_agent/TestAlertSchedulerHandler.py   | 22 ++--
 .../src/test/python/ambari_agent/TestAlerts.py  |  8 +++
 6 files changed, 31 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/86431d52/ambari-agent/conf/unix/ambari-agent.ini
--
diff --git a/ambari-agent/conf/unix/ambari-agent.ini 
b/ambari-agent/conf/unix/ambari-agent.ini
index 3b7631c..80afdb2 100644
--- a/ambari-agent/conf/unix/ambari-agent.ini
+++ b/ambari-agent/conf/unix/ambari-agent.ini
@@ -29,6 +29,7 @@ cache_dir=/var/lib/ambari-agent/cache
 tolerate_download_failures=true
 run_as_user=root
 parallel_execution=0
+alert_grace_period=5
 
 [security]
 keysdir=/var/lib/ambari-agent/keys

http://git-wip-us.apache.org/repos/asf/ambari/blob/86431d52/ambari-agent/conf/windows/ambari-agent.ini
--
diff --git a/ambari-agent/conf/windows/ambari-agent.ini 
b/ambari-agent/conf/windows/ambari-agent.ini
index 972e11e..1b24f25 100644
--- a/ambari-agent/conf/windows/ambari-agent.ini
+++ b/ambari-agent/conf/windows/ambari-agent.ini
@@ -29,6 +29,7 @@ ping_port=8670
 cache_dir=cache
 tolerate_download_failures=true
 parallel_execution=0
+alert_grace_period=5
 
 [security]
 keysdir=keys

http://git-wip-us.apache.org/repos/asf/ambari/blob/86431d52/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py
--
diff --git a/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py 
b/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py
index cddee57..d3aab87 100644
--- a/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py
+++ b/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py
@@ -43,14 +43,8 @@ class AlertSchedulerHandler():
   TYPE_SCRIPT = 'SCRIPT'
   TYPE_WEB = 'WEB'
 
-  APS_CONFIG = { 
-'threadpool.core_threads': 3,
-'coalesce': True,
-'standalone': False
-  }
-
   def __init__(self, cachedir, stacks_dir, common_services_dir, 
host_scripts_dir,
-  cluster_configuration, config, in_minutes=True):
+  alert_grace_period, cluster_configuration, config, in_minutes=True):
 
 self.cachedir = cachedir
 self.stacks_dir = stacks_dir
@@ -65,8 +59,15 @@ class AlertSchedulerHandler():
   except:
 logger.critical("[AlertScheduler] Could not create the cache directory 
{0}".format(cachedir))
 
+self.APS_CONFIG = {
+  'apscheduler.threadpool.core_threads': 3,
+  'apscheduler.coalesce': True,
+  'apscheduler.standalone': False,
+  'apscheduler.misfire_grace_time': alert_grace_period
+}
+
 self._collector = AlertCollector()
-self.__scheduler = Scheduler(AlertSchedulerHandler.APS_CONFIG)
+self.__scheduler = Scheduler(self.APS_CONFIG)
 self.__in_minutes = in_minutes
 self.config = config
 
@@ -122,7 +123,7 @@ class AlertSchedulerHandler():
 
 if self.__scheduler.running:
   self.__scheduler.shutdown(wait=False)
-  self.__scheduler = Scheduler(AlertSchedulerHandler.APS_CONFIG)
+  self.__scheduler = Scheduler(self.APS_CONFIG)
 
 alert_callables = self.__load_definitions()
 
@@ -139,7 +140,7 @@ class AlertSchedulerHandler():
   def stop(self):
 if not self.__scheduler is None:
   self.__scheduler.shutdown(wait=False)
-  self.__scheduler = Scheduler(AlertSchedulerHandler.APS_CONFIG)
+  self.__scheduler = Scheduler(self.APS_CONFIG)
 
 logger.info("[AlertScheduler] Stopped the alert scheduler.")
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/86431d52/ambari-agent/src/main/python/ambari_agent/Controller.py
--
diff --git a/ambari-agent/src/main/python/ambari_agent/Controller.py 
b/ambari-agent/src/main/python/ambari_agent/Controller.py
index 74a8eac..4ba5c45 100644
--- 

ambari git commit: AMBARI-13447 Redirect to Admin View after navigating to Install Wizard. (atkach)

2015-10-16 Thread atkach
Repository: ambari
Updated Branches:
  refs/heads/trunk 1076ec760 -> c402daed9


AMBARI-13447 Redirect to Admin View after navigating to Install Wizard. (atkach)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c402daed
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c402daed
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c402daed

Branch: refs/heads/trunk
Commit: c402daed925c8b1f6085cca154fa737567b377ba
Parents: 1076ec7
Author: Andrii Tkach 
Authored: Fri Oct 16 13:42:09 2015 +0300
Committer: Andrii Tkach 
Committed: Fri Oct 16 13:42:09 2015 +0300

--
 ambari-web/app/router.js   | 116 +++---
 ambari-web/test/router_test.js | 238 
 2 files changed, 310 insertions(+), 44 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/c402daed/ambari-web/app/router.js
--
diff --git a/ambari-web/app/router.js b/ambari-web/app/router.js
index 462ae66..934d434 100644
--- a/ambari-web/app/router.js
+++ b/ambari-web/app/router.js
@@ -313,57 +313,81 @@ App.Router = Em.Router.extend({
 
   },
 
+  /**
+   * success callback of login request
+   * @param {object} clustersData
+   * @param {object} opt
+   * @param {object} params
+   */
   loginGetClustersSuccessCallback: function (clustersData, opt, params) {
-var loginController = this.get('loginController');
-var loginData = params.loginData;
-var privileges = loginData.privileges || [];
+var privileges = params.loginData.privileges || [];
 var router = this;
-var permissionList = 
privileges.mapProperty('PrivilegeInfo.permission_name');
-  var isAdmin = permissionList.contains('AMBARI.ADMIN');
-  var transitionToApp = false;
-  if (isAdmin) {
-App.set('isAdmin', true);
-if (clustersData.items.length) {
-  router.setClusterInstalled(clustersData);
-  transitionToApp = true;
-} else {
-  App.ajax.send({
-name: 'ambari.service.load_server_version',
-sender: this,
-success: 'adminViewInfoSuccessCallback'
-  });
-}
+var isAdmin = 
privileges.mapProperty('PrivilegeInfo.permission_name').contains('AMBARI.ADMIN');
+
+App.set('isAdmin', isAdmin);
+
+if (clustersData.items.length) {
+  var clusterPermissions = privileges.
+filterProperty('PrivilegeInfo.cluster_name', 
clustersData.items[0].Clusters.cluster_name).
+mapProperty('PrivilegeInfo.permission_name');
+
+  //cluster installed
+  router.setClusterInstalled(clustersData);
+  if (clusterPermissions.contains('CLUSTER.OPERATE')) {
+App.setProperties({
+  isAdmin: true,
+  isOperator: true
+});
+  }
+  if (isAdmin || clusterPermissions.contains('CLUSTER.READ') || 
clusterPermissions.contains('CLUSTER.OPERATE')) {
+router.transitionToApp();
   } else {
-if (clustersData.items.length) {
-  router.setClusterInstalled(clustersData);
-  //TODO: Iterate over clusters
-  var clusterName = clustersData.items[0].Clusters.cluster_name;
-  var clusterPermissions = 
privileges.filterProperty('PrivilegeInfo.cluster_name', 
clusterName).mapProperty('PrivilegeInfo.permission_name');
-  if (clusterPermissions.contains('CLUSTER.OPERATE')) {
-App.setProperties({
-  isAdmin: true,
-  isOperator: true
-});
-transitionToApp = true;
-  } else if (clusterPermissions.contains('CLUSTER.READ')) {
-transitionToApp = true;
-  }
-}
+router.transitionToViews();
   }
-  App.set('isPermissionDataLoaded', true);
-  if (transitionToApp) {
-if (!router.restorePreferedPath()) {
-  router.getSection(function (route) {
-router.transitionTo(route);
-loginController.postLogin(true, true);
-  });
-}
+} else {
+  if (isAdmin) {
+router.transitionToAdminView();
   } else {
-App.router.get('mainViewsController').loadAmbariViews();
-router.transitionTo('main.views.index');
-loginController.postLogin(true,true);
+router.transitionToViews();
   }
+}
+App.set('isPermissionDataLoaded', true);
+App.router.get('userSettingsController').dataLoading();
   },
+
+  /**
+   * redirect user to Admin View
+   * @returns {$.ajax}
+   */
+  transitionToAdminView: function() {
+return App.ajax.send({
+  name: 'ambari.service.load_server_version',
+  sender: this,
+  success: 'adminViewInfoSuccessCallback',
+  error: 'adminViewInfoErrorCallback'
+});
+ 

ambari git commit: AMBARI-13447 Redirect to Admin View after navigating to Install Wizard. (atkach)

2015-10-16 Thread atkach
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 86431d521 -> b404e04c8


AMBARI-13447 Redirect to Admin View after navigating to Install Wizard. (atkach)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/b404e04c
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/b404e04c
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/b404e04c

Branch: refs/heads/branch-2.1
Commit: b404e04c89b45c31644786b34ec5924fe4401c14
Parents: 86431d5
Author: Andrii Tkach 
Authored: Fri Oct 16 12:49:09 2015 +0300
Committer: Andrii Tkach 
Committed: Fri Oct 16 13:38:38 2015 +0300

--
 ambari-web/app/router.js   | 116 +++---
 ambari-web/test/router_test.js | 238 
 2 files changed, 310 insertions(+), 44 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/b404e04c/ambari-web/app/router.js
--
diff --git a/ambari-web/app/router.js b/ambari-web/app/router.js
index f6ffc41..f3bcbfe 100644
--- a/ambari-web/app/router.js
+++ b/ambari-web/app/router.js
@@ -313,57 +313,81 @@ App.Router = Em.Router.extend({
 
   },
 
+  /**
+   * success callback of login request
+   * @param {object} clustersData
+   * @param {object} opt
+   * @param {object} params
+   */
   loginGetClustersSuccessCallback: function (clustersData, opt, params) {
-var loginController = this.get('loginController');
-var loginData = params.loginData;
-var privileges = loginData.privileges || [];
+var privileges = params.loginData.privileges || [];
 var router = this;
-var permissionList = 
privileges.mapProperty('PrivilegeInfo.permission_name');
-  var isAdmin = permissionList.contains('AMBARI.ADMIN');
-  var transitionToApp = false;
-  if (isAdmin) {
-App.set('isAdmin', true);
-if (clustersData.items.length) {
-  router.setClusterInstalled(clustersData);
-  transitionToApp = true;
-} else {
-  App.ajax.send({
-name: 'ambari.service.load_server_version',
-sender: this,
-success: 'adminViewInfoSuccessCallback'
-  });
-}
+var isAdmin = 
privileges.mapProperty('PrivilegeInfo.permission_name').contains('AMBARI.ADMIN');
+
+App.set('isAdmin', isAdmin);
+
+if (clustersData.items.length) {
+  var clusterPermissions = privileges.
+filterProperty('PrivilegeInfo.cluster_name', 
clustersData.items[0].Clusters.cluster_name).
+mapProperty('PrivilegeInfo.permission_name');
+
+  //cluster installed
+  router.setClusterInstalled(clustersData);
+  if (clusterPermissions.contains('CLUSTER.OPERATE')) {
+App.setProperties({
+  isAdmin: true,
+  isOperator: true
+});
+  }
+  if (isAdmin || clusterPermissions.contains('CLUSTER.READ') || 
clusterPermissions.contains('CLUSTER.OPERATE')) {
+router.transitionToApp();
   } else {
-if (clustersData.items.length) {
-  router.setClusterInstalled(clustersData);
-  //TODO: Iterate over clusters
-  var clusterName = clustersData.items[0].Clusters.cluster_name;
-  var clusterPermissions = 
privileges.filterProperty('PrivilegeInfo.cluster_name', 
clusterName).mapProperty('PrivilegeInfo.permission_name');
-  if (clusterPermissions.contains('CLUSTER.OPERATE')) {
-App.setProperties({
-  isAdmin: true,
-  isOperator: true
-});
-transitionToApp = true;
-  } else if (clusterPermissions.contains('CLUSTER.READ')) {
-transitionToApp = true;
-  }
-}
+router.transitionToViews();
   }
-  App.set('isPermissionDataLoaded', true);
-  if (transitionToApp) {
-if (!router.restorePreferedPath()) {
-  router.getSection(function (route) {
-router.transitionTo(route);
-loginController.postLogin(true, true);
-  });
-}
+} else {
+  if (isAdmin) {
+router.transitionToAdminView();
   } else {
-App.router.get('mainViewsController').loadAmbariViews();
-router.transitionTo('main.views.index');
-loginController.postLogin(true,true);
+router.transitionToViews();
   }
+}
+App.set('isPermissionDataLoaded', true);
+App.router.get('userSettingsController').dataLoading();
   },
+
+  /**
+   * redirect user to Admin View
+   * @returns {$.ajax}
+   */
+  transitionToAdminView: function() {
+return App.ajax.send({
+  name: 'ambari.service.load_server_version',
+  sender: this,
+  success: 'adminViewInfoSuccessCallback',
+  error: 'adminViewInfoErrorCallback'

[1/2] ambari git commit: AMBARI-13449. FE changes for persisting/updating/removing KDC admin credentials.

2015-10-16 Thread alexantonenko
Repository: ambari
Updated Branches:
  refs/heads/trunk a509510ee -> 1076ec760


AMBARI-13449. FE changes for persisting/updating/removing KDC admin credentials.


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/1076ec76
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/1076ec76
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/1076ec76

Branch: refs/heads/trunk
Commit: 1076ec760bdafae4de876e66e39acad4f26c0b7e
Parents: 4a95428
Author: Alex Antonenko 
Authored: Fri Oct 16 13:13:53 2015 +0300
Committer: Alex Antonenko 
Committed: Fri Oct 16 13:38:21 2015 +0300

--
 ambari-web/app/assets/test/tests.js |   1 +
 .../app/controllers/main/admin/kerberos.js  |   5 +
 .../main/admin/kerberos/wizard_controller.js|  10 +-
 ambari-web/app/messages.js  |   3 +
 .../common/kdc_credentials_controller_mixin.js  |   5 +-
 ambari-web/app/styles/common.less   |   8 +-
 .../common/form/manage_credentilas_form.hbs |  58 +
 .../app/templates/main/admin/kerberos.hbs   |   3 +
 ambari-web/app/utils/ajax/ajax.js   |   2 +-
 ambari-web/app/utils/credentials.js |  47 -
 ambari-web/app/views.js |   2 +
 .../common/form/manage_credentials_form_view.js | 209 +++
 .../common/modal_popups/invalid_KDC_popup.js|   2 +-
 .../manage_kdc_credentials_popup.js |  58 +
 .../form/manage_kdc_credentials_form_test.js| 138 
 15 files changed, 535 insertions(+), 16 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/1076ec76/ambari-web/app/assets/test/tests.js
--
diff --git a/ambari-web/app/assets/test/tests.js 
b/ambari-web/app/assets/test/tests.js
index 5b5f588..b59f91f 100644
--- a/ambari-web/app/assets/test/tests.js
+++ b/ambari-web/app/assets/test/tests.js
@@ -273,6 +273,7 @@ var files = [
   'test/views/common/controls_view_test',
   'test/views/common/configs/widgets/time_interval_spinner_view_test',
   'test/views/common/form/spinner_input_view_test',
+  'test/views/common/form/manage_kdc_credentials_form_test',
   'test/views/wizard/step3/hostLogPopupBody_view_test',
   'test/views/wizard/step3/hostWarningPopupBody_view_test',
   'test/views/wizard/step3/hostWarningPopupFooter_view_test',

http://git-wip-us.apache.org/repos/asf/ambari/blob/1076ec76/ambari-web/app/controllers/main/admin/kerberos.js
--
diff --git a/ambari-web/app/controllers/main/admin/kerberos.js 
b/ambari-web/app/controllers/main/admin/kerberos.js
index ca2f0dc..d339f63 100644
--- a/ambari-web/app/controllers/main/admin/kerberos.js
+++ b/ambari-web/app/controllers/main/admin/kerberos.js
@@ -582,5 +582,10 @@ App.MainAdminKerberosController = 
App.KerberosWizardStep4Controller.extend({
 dfd.reject();
   }, Em.I18n.t('common.warning'), Em.I18n.t('common.proceedAnyway'));
 }
+  },
+
+  showManageKDCCredentialsPopup: function() {
+return App.showManageCredentialsPopup();
   }
+
 });

http://git-wip-us.apache.org/repos/asf/ambari/blob/1076ec76/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
--
diff --git 
a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js 
b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
index 6209f29..e0e146a 100644
--- a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
+++ b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
@@ -263,10 +263,14 @@ App.KerberosWizardController = 
App.WizardController.extend(App.InstallComponent,
 callback: function() {
   var self = this;
   var dfd = $.Deferred();
-  
credentialsUtils.isStorePersisted(App.get('clusterName')).then(function(isPersisted)
 {
-self.set('content.secureStoragePersisted', isPersisted);
+  if (App.get('supports.storeKDCCredentials')) {
+
credentialsUtils.isStorePersisted(App.get('clusterName')).then(function(isPersisted)
 {
+  self.set('content.secureStoragePersisted', isPersisted);
+  dfd.resolve();
+});
+  } else {
 dfd.resolve();
-  });
+  }
   return dfd.promise();
 }
   }

http://git-wip-us.apache.org/repos/asf/ambari/blob/1076ec76/ambari-web/app/messages.js
--
diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js
index 6437ee9..5df161b 100644
--- a/ambari-web/app/messages.js
+++ b/ambari-web/app/messages.js
@@ 

[1/2] ambari git commit: AMBARI-13434. Expose Alert Grace Period Setting in Agents (aonishuk)

2015-10-16 Thread aonishuk
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 119a50fcf -> 86431d521
  refs/heads/trunk 082db1cc2 -> a509510ee


AMBARI-13434. Expose Alert Grace Period Setting in Agents (aonishuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/a509510e
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/a509510e
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/a509510e

Branch: refs/heads/trunk
Commit: a509510ee7fca526178afbed93847112b510b59d
Parents: 082db1c
Author: Andrew Onishuk 
Authored: Fri Oct 16 13:07:42 2015 +0300
Committer: Andrew Onishuk 
Committed: Fri Oct 16 13:07:42 2015 +0300

--
 ambari-agent/conf/unix/ambari-agent.ini |  1 +
 ambari-agent/conf/windows/ambari-agent.ini  |  1 +
 .../ambari_agent/AlertSchedulerHandler.py   | 21 ++-
 .../src/main/python/ambari_agent/Controller.py  |  4 +++-
 .../ambari_agent/TestAlertSchedulerHandler.py   | 22 ++--
 .../src/test/python/ambari_agent/TestAlerts.py  |  8 +++
 6 files changed, 31 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/a509510e/ambari-agent/conf/unix/ambari-agent.ini
--
diff --git a/ambari-agent/conf/unix/ambari-agent.ini 
b/ambari-agent/conf/unix/ambari-agent.ini
index 3b7631c..80afdb2 100644
--- a/ambari-agent/conf/unix/ambari-agent.ini
+++ b/ambari-agent/conf/unix/ambari-agent.ini
@@ -29,6 +29,7 @@ cache_dir=/var/lib/ambari-agent/cache
 tolerate_download_failures=true
 run_as_user=root
 parallel_execution=0
+alert_grace_period=5
 
 [security]
 keysdir=/var/lib/ambari-agent/keys

http://git-wip-us.apache.org/repos/asf/ambari/blob/a509510e/ambari-agent/conf/windows/ambari-agent.ini
--
diff --git a/ambari-agent/conf/windows/ambari-agent.ini 
b/ambari-agent/conf/windows/ambari-agent.ini
index 972e11e..1b24f25 100644
--- a/ambari-agent/conf/windows/ambari-agent.ini
+++ b/ambari-agent/conf/windows/ambari-agent.ini
@@ -29,6 +29,7 @@ ping_port=8670
 cache_dir=cache
 tolerate_download_failures=true
 parallel_execution=0
+alert_grace_period=5
 
 [security]
 keysdir=keys

http://git-wip-us.apache.org/repos/asf/ambari/blob/a509510e/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py
--
diff --git a/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py 
b/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py
index cddee57..d3aab87 100644
--- a/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py
+++ b/ambari-agent/src/main/python/ambari_agent/AlertSchedulerHandler.py
@@ -43,14 +43,8 @@ class AlertSchedulerHandler():
   TYPE_SCRIPT = 'SCRIPT'
   TYPE_WEB = 'WEB'
 
-  APS_CONFIG = { 
-'threadpool.core_threads': 3,
-'coalesce': True,
-'standalone': False
-  }
-
   def __init__(self, cachedir, stacks_dir, common_services_dir, 
host_scripts_dir,
-  cluster_configuration, config, in_minutes=True):
+  alert_grace_period, cluster_configuration, config, in_minutes=True):
 
 self.cachedir = cachedir
 self.stacks_dir = stacks_dir
@@ -65,8 +59,15 @@ class AlertSchedulerHandler():
   except:
 logger.critical("[AlertScheduler] Could not create the cache directory 
{0}".format(cachedir))
 
+self.APS_CONFIG = {
+  'apscheduler.threadpool.core_threads': 3,
+  'apscheduler.coalesce': True,
+  'apscheduler.standalone': False,
+  'apscheduler.misfire_grace_time': alert_grace_period
+}
+
 self._collector = AlertCollector()
-self.__scheduler = Scheduler(AlertSchedulerHandler.APS_CONFIG)
+self.__scheduler = Scheduler(self.APS_CONFIG)
 self.__in_minutes = in_minutes
 self.config = config
 
@@ -122,7 +123,7 @@ class AlertSchedulerHandler():
 
 if self.__scheduler.running:
   self.__scheduler.shutdown(wait=False)
-  self.__scheduler = Scheduler(AlertSchedulerHandler.APS_CONFIG)
+  self.__scheduler = Scheduler(self.APS_CONFIG)
 
 alert_callables = self.__load_definitions()
 
@@ -139,7 +140,7 @@ class AlertSchedulerHandler():
   def stop(self):
 if not self.__scheduler is None:
   self.__scheduler.shutdown(wait=False)
-  self.__scheduler = Scheduler(AlertSchedulerHandler.APS_CONFIG)
+  self.__scheduler = Scheduler(self.APS_CONFIG)
 
 logger.info("[AlertScheduler] Stopped the alert scheduler.")
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a509510e/ambari-agent/src/main/python/ambari_agent/Controller.py
--
diff --git 

[1/2] ambari git commit: AMBARI-13449. FE changes for persisting/updating/removing KDC admin credentials.

2015-10-16 Thread alexantonenko
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 b404e04c8 -> 70d72f1c8


AMBARI-13449. FE changes for persisting/updating/removing KDC admin credentials.


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/70d72f1c
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/70d72f1c
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/70d72f1c

Branch: refs/heads/branch-2.1
Commit: 70d72f1c8d581ac6c69440d81bb0f122bb07865e
Parents: c1436d0
Author: Alex Antonenko 
Authored: Fri Oct 16 13:13:53 2015 +0300
Committer: Alex Antonenko 
Committed: Fri Oct 16 13:40:31 2015 +0300

--
 ambari-web/app/assets/test/tests.js |   1 +
 .../app/controllers/main/admin/kerberos.js  |   5 +
 .../main/admin/kerberos/wizard_controller.js|  10 +-
 ambari-web/app/messages.js  |   3 +
 .../common/kdc_credentials_controller_mixin.js  |   5 +-
 ambari-web/app/styles/common.less   |   8 +-
 .../common/form/manage_credentilas_form.hbs |  58 +
 .../app/templates/main/admin/kerberos.hbs   |   3 +
 ambari-web/app/utils/ajax/ajax.js   |   2 +-
 ambari-web/app/utils/credentials.js |  47 -
 ambari-web/app/views.js |   2 +
 .../common/form/manage_credentials_form_view.js | 209 +++
 .../common/modal_popups/invalid_KDC_popup.js|   2 +-
 .../manage_kdc_credentials_popup.js |  58 +
 .../form/manage_kdc_credentials_form_test.js| 138 
 15 files changed, 535 insertions(+), 16 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/70d72f1c/ambari-web/app/assets/test/tests.js
--
diff --git a/ambari-web/app/assets/test/tests.js 
b/ambari-web/app/assets/test/tests.js
index dfb9c91..9eee1fc 100644
--- a/ambari-web/app/assets/test/tests.js
+++ b/ambari-web/app/assets/test/tests.js
@@ -272,6 +272,7 @@ var files = ['test/init_model_test',
   'test/views/common/controls_view_test',
   'test/views/common/configs/widgets/time_interval_spinner_view_test',
   'test/views/common/form/spinner_input_view_test',
+  'test/views/common/form/manage_kdc_credentials_form_test',
   'test/views/wizard/step3/hostLogPopupBody_view_test',
   'test/views/wizard/step3/hostWarningPopupBody_view_test',
   'test/views/wizard/step3/hostWarningPopupFooter_view_test',

http://git-wip-us.apache.org/repos/asf/ambari/blob/70d72f1c/ambari-web/app/controllers/main/admin/kerberos.js
--
diff --git a/ambari-web/app/controllers/main/admin/kerberos.js 
b/ambari-web/app/controllers/main/admin/kerberos.js
index 52ba513..95d6d50 100644
--- a/ambari-web/app/controllers/main/admin/kerberos.js
+++ b/ambari-web/app/controllers/main/admin/kerberos.js
@@ -582,5 +582,10 @@ App.MainAdminKerberosController = 
App.KerberosWizardStep4Controller.extend({
 dfd.reject();
   }, Em.I18n.t('common.warning'), Em.I18n.t('common.proceedAnyway'));
 }
+  },
+
+  showManageKDCCredentialsPopup: function() {
+return App.showManageCredentialsPopup();
   }
+
 });

http://git-wip-us.apache.org/repos/asf/ambari/blob/70d72f1c/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
--
diff --git 
a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js 
b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
index faae674..2f15221 100644
--- a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
+++ b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
@@ -258,10 +258,14 @@ App.KerberosWizardController = 
App.WizardController.extend(App.InstallComponent,
 callback: function() {
   var self = this;
   var dfd = $.Deferred();
-  
credentialsUtils.isStorePersisted(App.get('clusterName')).then(function(isPersisted)
 {
-self.set('content.secureStoragePersisted', isPersisted);
+  if (App.get('supports.storeKDCCredentials')) {
+
credentialsUtils.isStorePersisted(App.get('clusterName')).then(function(isPersisted)
 {
+  self.set('content.secureStoragePersisted', isPersisted);
+  dfd.resolve();
+});
+  } else {
 dfd.resolve();
-  });
+  }
   return dfd.promise();
 }
   }

http://git-wip-us.apache.org/repos/asf/ambari/blob/70d72f1c/ambari-web/app/messages.js
--
diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js
index c059930..0d0ff4e 100644
--- a/ambari-web/app/messages.js
+++ 

[2/2] ambari git commit: AMBARI-13448. CSV export: downloaded data does not reflect what's shown in the chart

2015-10-16 Thread alexantonenko
AMBARI-13448. CSV export: downloaded data does not reflect what's shown in the 
chart


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c1436d0f
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c1436d0f
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c1436d0f

Branch: refs/heads/branch-2.1
Commit: c1436d0f37bcf1bc75d5a2bc1085a77cccef3b94
Parents: b404e04
Author: Alex Antonenko 
Authored: Fri Oct 16 13:08:00 2015 +0300
Committer: Alex Antonenko 
Committed: Fri Oct 16 13:40:31 2015 +0300

--
 .../views/common/widget/graph_widget_view.js|   2 +-
 .../common/widget/graph_widget_view_test.js | 112 +++
 2 files changed, 113 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/c1436d0f/ambari-web/app/views/common/widget/graph_widget_view.js
--
diff --git a/ambari-web/app/views/common/widget/graph_widget_view.js 
b/ambari-web/app/views/common/widget/graph_widget_view.js
index fb8e754..1ed20d2 100644
--- a/ambari-web/app/views/common/widget/graph_widget_view.js
+++ b/ambari-web/app/views/common/widget/graph_widget_view.js
@@ -313,7 +313,7 @@ App.GraphWidgetView = Em.View.extend(App.WidgetMixin, 
App.ExportMetricsMixin, {
   isCSV = !!event.context,
   fileType = isCSV ? 'csv' : 'json',
   fileName = 'data.' + fileType,
-  metrics = this.get('content.metrics'),
+  metrics = this.get('data'),
   hasData = Em.isArray(metrics) && metrics.some(function (item) {
 return Em.isArray(item.data);
   });

http://git-wip-us.apache.org/repos/asf/ambari/blob/c1436d0f/ambari-web/test/views/common/widget/graph_widget_view_test.js
--
diff --git a/ambari-web/test/views/common/widget/graph_widget_view_test.js 
b/ambari-web/test/views/common/widget/graph_widget_view_test.js
index deccce5..7215128 100644
--- a/ambari-web/test/views/common/widget/graph_widget_view_test.js
+++ b/ambari-web/test/views/common/widget/graph_widget_view_test.js
@@ -18,6 +18,7 @@
 
 var App = require('app');
 require('views/common/widget/graph_widget_view');
+var fileUtils = require('utils/file_utils');
 
 describe('App.GraphWidgetView', function () {
   var view = App.GraphWidgetView.create();
@@ -126,4 +127,115 @@ describe('App.GraphWidgetView', function () {
 });
   });
 
+  describe('#exportGraphData', function () {
+
+var cases = [
+  {
+data: null,
+prepareCSVCallCount: 0,
+prepareJSONCallCount: 0,
+downloadTextFileCallCount: 0,
+showAlertPopupCallCount: 1,
+title: 'no data'
+  },
+  {
+data: {},
+prepareCSVCallCount: 0,
+prepareJSONCallCount: 0,
+downloadTextFileCallCount: 0,
+showAlertPopupCallCount: 1,
+title: 'invalid data'
+  },
+  {
+data: [
+  {
+data: null
+  }
+],
+prepareCSVCallCount: 0,
+prepareJSONCallCount: 0,
+downloadTextFileCallCount: 0,
+showAlertPopupCallCount: 1,
+title: 'empty data'
+  },
+  {
+data: [
+  {
+data: {}
+  }
+],
+prepareCSVCallCount: 0,
+prepareJSONCallCount: 0,
+downloadTextFileCallCount: 0,
+showAlertPopupCallCount: 1,
+title: 'malformed data'
+  },
+  {
+data: [
+  {
+data: [
+  {
+key: 'value'
+  }
+]
+  }
+],
+prepareCSVCallCount: 0,
+prepareJSONCallCount: 1,
+downloadTextFileCallCount: 1,
+showAlertPopupCallCount: 0,
+title: 'JSON export'
+  },
+  {
+data: [
+  {
+data: [
+  {
+key: 'value'
+  }
+]
+  }
+],
+event: {
+  context: true
+},
+prepareCSVCallCount: 1,
+prepareJSONCallCount: 0,
+downloadTextFileCallCount: 1,
+showAlertPopupCallCount: 0,
+title: 'CSV export'
+  }
+];
+
+beforeEach(function () {
+  sinon.stub(view, 'prepareCSV').returns([]);
+  sinon.stub(view, 'prepareJSON').returns([]);
+  sinon.stub(fileUtils, 'downloadTextFile', Em.K);
+  sinon.stub(App, 'showAlertPopup', Em.K);
+});
+
+afterEach(function () {
+  view.prepareCSV.restore();
+  view.prepareJSON.restore();
+  fileUtils.downloadTextFile.restore();
+  App.showAlertPopup.restore();
+});
+
+cases.forEach(function (item) {
+  it(item.title, function () {
+view.set('data', item.data);
+

[1/2] ambari git commit: AMBARI-13451. Timezone select list needs to be user friendly (onechiporenko)

2015-10-16 Thread onechiporenko
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 cbec44688 -> d1361f716


http://git-wip-us.apache.org/repos/asf/ambari/blob/d1361f71/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js
--
diff --git a/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js 
b/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js
index cbfdf1b..5d4a1d1 100644
--- a/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js
+++ b/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js
@@ -433,49 +433,30 @@
"Africa/Ceuta|CET CEST|-10 
-20|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 
11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00",
"Africa/Johannesburg|SAST|-20|0|",
"Africa/Tripoli|EET CET CEST|-20 -10 -20|0120|1IlA0 TA0 
1o00",
-   "Africa/Windhoek|WAST WAT|-20 
-10|01010101010101010101010|1C1c0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 
1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0",
"America/Adak|HST HDT|a0 
90|01010101010101010101010|1BR00 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Anchorage|AKST AKDT|90 
80|01010101010101010101010|1BQX0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Anguilla|AST|40|0|",
-   "America/Araguaina|BRT BRST|30 20|010|1IdD0 Lz0",
"America/Argentina/Buenos_Aires|ART|30|0|",
-   "America/Asuncion|PYST PYT|30 
40|01010101010101010101010|1C430 1a10 1fz0 1a10 1fz0 1cN0 17b0 1ip0 17b0 1ip0 
17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0",
"America/Atikokan|EST|50|0|",
-   "America/Bahia|BRT BRST|30 20|010|1FJf0 Rb0",
-   "America/Bahia_Banderas|MST CDT CST|70 50 
60|01212121212121212121212|1C1l0 1nW0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 
14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0",
-   "America/Belem|BRT|30|0|",
"America/Belize|CST|60|0|",
"America/Boa_Vista|AMT|40|0|",
"America/Bogota|COT|50|0|",
"America/Boise|MST MDT|70 
60|01010101010101010101010|1BQV0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
-   "America/Campo_Grande|AMST AMT|30 
40|01010101010101010101010|1BIr0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 
1zd0 On0 1zd0 On0 1zd0 On0 1C10 Lz0 1C10 Lz0 1C10",
"America/Cancun|CST CDT EST|60 50 50|010101010102|1C1k0 
1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 Dd0",
"America/Caracas|VET|4u|0|",
-   "America/Cayenne|GFT|30|0|",
"America/Chicago|CST CDT|60 
50|01010101010101010101010|1BQU0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Chihuahua|MST MDT|70 
60|01010101010101010101010|1C1l0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 
14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0",
"America/Creston|MST|70|0|",
"America/Dawson|PST PDT|80 
70|01010101010101010101010|1BQW0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Detroit|EST EDT|50 
40|01010101010101010101010|1BQT0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
-   "America/Eirunepe|AMT ACT|40 50|01|1KLE0",
-   "America/Glace_Bay|AST ADT|40 
30|01010101010101010101010|1BQS0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Godthab|WGT WGST|30 
20|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 
11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00",
-   "America/Goose_Bay|AST ADT|40 
30|01010101010101010101010|1BQQ1 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
-   "America/Grand_Turk|EST EDT AST|50 40 
40|0101010101012|1BQT0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
-   "America/Guayaquil|ECT|50|0|",
-   "America/Guyana|GYT|40|0|",
"America/Havana|CST CDT|50 
40|01010101010101010101010|1BQR0 1wo0 U00 1zc0 U00 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 
1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0",
-   "America/La_Paz|BOT|40|0|",
  

[2/2] ambari git commit: AMBARI-13451. Timezone select list needs to be user friendly (onechiporenko)

2015-10-16 Thread onechiporenko
AMBARI-13451. Timezone select list needs to be user friendly (onechiporenko)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/34082a5a
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/34082a5a
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/34082a5a

Branch: refs/heads/trunk
Commit: 34082a5a7aa90f4c937b46c133629b26aba5e909
Parents: 2fbbadf
Author: Oleg Nechiporenko 
Authored: Fri Oct 16 15:51:44 2015 +0300
Committer: Oleg Nechiporenko 
Committed: Fri Oct 16 15:51:44 2015 +0300

--
 ambari-web/app/assets/test/tests.js |   3 +-
 .../global/user_settings_controller.js  | 166 +-
 .../charts/heatmap_metrics/heatmap_metric.js|   4 +-
 .../app/mappers/service_metrics_mapper.js   |   4 +-
 .../app/models/alerts/alert_definition.js   |   2 +-
 ambari-web/app/models/alerts/alert_instance.js  |   2 +-
 .../models/configs/service_config_version.js|   2 +-
 ambari-web/app/templates/common/settings.hbs|   4 +-
 ambari-web/app/utils/data_manipulation.js   |   2 +-
 ambari-web/app/utils/date.js| 242 ---
 ambari-web/app/utils/date/date.js   | 215 +
 ambari-web/app/utils/date/timezone.js   | 226 ++
 ambari-web/app/utils/helper.js  |   4 +-
 ambari-web/app/utils/host_progress_popup.js |   2 +-
 .../app/views/common/chart/linear_time.js   |   2 +-
 .../app/views/main/alert_definitions_view.js|   2 +-
 ambari-web/app/views/main/alerts.js |   2 +-
 .../views/main/charts/heatmap/heatmap_host.js   |   4 +-
 .../main/dashboard/widgets/links_widget.js  |   2 +-
 .../widgets/resource_manager_uptime.js  |   2 +-
 .../views/main/dashboard/widgets/text_widget.js |   2 +-
 .../dashboard/widgets/uptime_text_widget.js |   2 +-
 ambari-web/app/views/main/host.js   |   2 +-
 ambari-web/app/views/main/host/configs.js   |   2 +-
 ambari-web/app/views/main/host/details.js   |   2 +-
 .../app/views/main/service/services/flume.js|   2 +-
 .../app/views/main/service/services/hbase.js|   2 +-
 .../app/views/main/service/services/hdfs.js |   2 +-
 .../app/views/main/service/services/storm.js|   2 +-
 .../app/views/main/service/services/yarn.js |   2 +-
 .../views/wizard/step9/hostLogPopupBody_view.js |   4 +-
 ambari-web/app/views/wizard/step9_view.js   |   2 +-
 .../heatmap_metrics/heatmap_metric_test.js  |   2 +-
 ambari-web/test/utils/date/date_test.js | 185 
 ambari-web/test/utils/date/timezone_test.js | 175 +++
 ambari-web/test/utils/date_test.js  | 185 
 .../test/views/common/chart/linear_time_test.js |   2 +-
 .../moment-timezone-with-data-2010-2020.js  | 299 +--
 38 files changed, 911 insertions(+), 855 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/34082a5a/ambari-web/app/assets/test/tests.js
--
diff --git a/ambari-web/app/assets/test/tests.js 
b/ambari-web/app/assets/test/tests.js
index b59f91f..f79658c 100644
--- a/ambari-web/app/assets/test/tests.js
+++ b/ambari-web/app/assets/test/tests.js
@@ -163,7 +163,8 @@ var files = [
   'test/utils/batch_scheduled_requests_test',
   'test/utils/blueprint_test',
   'test/utils/config_test',
-  'test/utils/date_test',
+  'test/utils/date/date_test',
+  'test/utils/date/timezone_test',
   'test/utils/data_manipulation_test',
   'test/utils/config_test',
   'test/utils/form_field_test',

http://git-wip-us.apache.org/repos/asf/ambari/blob/34082a5a/ambari-web/app/controllers/global/user_settings_controller.js
--
diff --git a/ambari-web/app/controllers/global/user_settings_controller.js 
b/ambari-web/app/controllers/global/user_settings_controller.js
index ef53d81..4ad7786 100644
--- a/ambari-web/app/controllers/global/user_settings_controller.js
+++ b/ambari-web/app/controllers/global/user_settings_controller.js
@@ -18,7 +18,7 @@
 
 var App = require('app');
 
-var dateUtils = require('utils/date');
+var timezoneUtils = require('utils/date/timezone');
 
 /**
  * Controller for user settings
@@ -49,47 +49,11 @@ App.UserSettingsController = 
Em.Controller.extend(App.UserPref, {
   },
   timezone: {
 name: prefix + 'timezone-' + loginName,
-defaultValue: dateUtils.detectUserTimezone()
+defaultValue: timezoneUtils.detectUserTimezone()
   }
 };
   }.property('App.router.loginName'),
 
-  init: function () {
-this.set('timezonesFormatted', this._parseTimezones());
-this._super();
-  },
-
-  /**
-   *
-   * @private
-   * @method 

[1/2] ambari git commit: AMBARI-13452. RegionServer Upgrade verification is not case sensitive (aonishuk)

2015-10-16 Thread aonishuk
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 d1361f716 -> 66251218c
  refs/heads/trunk 34082a5a7 -> 8bb2b14fb


AMBARI-13452. RegionServer Upgrade verification is not case sensitive (aonishuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/8bb2b14f
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/8bb2b14f
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/8bb2b14f

Branch: refs/heads/trunk
Commit: 8bb2b14fb3ac7d80031d618767e3b43972ad0f0f
Parents: 34082a5
Author: Andrew Onishuk 
Authored: Fri Oct 16 16:01:05 2015 +0300
Committer: Andrew Onishuk 
Committed: Fri Oct 16 16:01:05 2015 +0300

--
 .../common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py   | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/8bb2b14f/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 44bf958..a9ccede 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
@@ -40,8 +40,7 @@ def post_regionserver(env):
   check_cmd = "echo 'status \"simple\"' | {0} shell".format(params.hbase_cmd)
 
   exec_cmd = "{0} {1}".format(params.kinit_cmd, check_cmd)
-  call_and_match(exec_cmd, params.hbase_user, params.hostname.lower() + ":")
-
+  call_and_match(exec_cmd, params.hbase_user, params.hostname + ":")
 
 @retry(times=15, sleep_time=2, err_class=Fail)
 def call_and_match(cmd, user, regex):



ambari git commit: AMBARI-13446 Subsection tab having visible invalid property should show error count next to subsection tab label. (ababiichuk)

2015-10-16 Thread ababiichuk
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 70d72f1c8 -> cbec44688


AMBARI-13446 Subsection tab having visible invalid property should show error 
count next to subsection tab label. (ababiichuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/cbec4468
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/cbec4468
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/cbec4468

Branch: refs/heads/branch-2.1
Commit: cbec44688f7af9f8582acb13203237a931dd1bb7
Parents: 70d72f1
Author: aBabiichuk 
Authored: Fri Oct 16 11:54:32 2015 +0300
Committer: aBabiichuk 
Committed: Fri Oct 16 14:36:04 2015 +0300

--
 .../app/templates/common/configs/service_config_layout_tab.hbs| 3 +++
 1 file changed, 3 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/cbec4468/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs
--
diff --git 
a/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs 
b/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs
index c1bb92b..4c9dccf 100644
--- a/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs
+++ b/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs
@@ -53,6 +53,9 @@
   
 
   {{subSectionTab.displayName}}
+  {{#if subSectionTab.errorsCount}}
+{{subSectionTab.errorsCount}}
+  {{/if}}
 
   
 {{/each}}



[2/2] ambari git commit: AMBARI-13452. RegionServer Upgrade verification is not case sensitive (aonishuk)

2015-10-16 Thread aonishuk
AMBARI-13452. RegionServer Upgrade verification is not case sensitive (aonishuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/66251218
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/66251218
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/66251218

Branch: refs/heads/branch-2.1
Commit: 66251218c7fcbcde3cbef781f5cfebeec8f8ba32
Parents: d1361f7
Author: Andrew Onishuk 
Authored: Fri Oct 16 16:01:12 2015 +0300
Committer: Andrew Onishuk 
Committed: Fri Oct 16 16:01:12 2015 +0300

--
 .../common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py   | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/66251218/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 44bf958..a9ccede 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
@@ -40,8 +40,7 @@ def post_regionserver(env):
   check_cmd = "echo 'status \"simple\"' | {0} shell".format(params.hbase_cmd)
 
   exec_cmd = "{0} {1}".format(params.kinit_cmd, check_cmd)
-  call_and_match(exec_cmd, params.hbase_user, params.hostname.lower() + ":")
-
+  call_and_match(exec_cmd, params.hbase_user, params.hostname + ":")
 
 @retry(times=15, sleep_time=2, err_class=Fail)
 def call_and_match(cmd, user, regex):



ambari git commit: AMBARI-13446 Subsection tab having visible invalid property should show error count next to subsection tab label. (ababiichuk)

2015-10-16 Thread ababiichuk
Repository: ambari
Updated Branches:
  refs/heads/trunk c402daed9 -> 2fbbadf85


AMBARI-13446 Subsection tab having visible invalid property should show error 
count next to subsection tab label. (ababiichuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/2fbbadf8
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/2fbbadf8
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/2fbbadf8

Branch: refs/heads/trunk
Commit: 2fbbadf85d86004b0df97747cbf3f46e7a904a2e
Parents: c402dae
Author: aBabiichuk 
Authored: Fri Oct 16 11:54:32 2015 +0300
Committer: aBabiichuk 
Committed: Fri Oct 16 14:36:48 2015 +0300

--
 .../app/templates/common/configs/service_config_layout_tab.hbs| 3 +++
 1 file changed, 3 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/2fbbadf8/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs
--
diff --git 
a/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs 
b/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs
index c1bb92b..4c9dccf 100644
--- a/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs
+++ b/ambari-web/app/templates/common/configs/service_config_layout_tab.hbs
@@ -53,6 +53,9 @@
   
 
   {{subSectionTab.displayName}}
+  {{#if subSectionTab.errorsCount}}
+{{subSectionTab.errorsCount}}
+  {{/if}}
 
   
 {{/each}}



[1/2] ambari git commit: AMBARI-13451. Timezone select list needs to be user friendly (onechiporenko)

2015-10-16 Thread onechiporenko
Repository: ambari
Updated Branches:
  refs/heads/trunk 2fbbadf85 -> 34082a5a7


http://git-wip-us.apache.org/repos/asf/ambari/blob/34082a5a/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js
--
diff --git a/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js 
b/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js
index cbfdf1b..5d4a1d1 100644
--- a/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js
+++ b/ambari-web/vendor/scripts/moment-timezone-with-data-2010-2020.js
@@ -433,49 +433,30 @@
"Africa/Ceuta|CET CEST|-10 
-20|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 
11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00",
"Africa/Johannesburg|SAST|-20|0|",
"Africa/Tripoli|EET CET CEST|-20 -10 -20|0120|1IlA0 TA0 
1o00",
-   "Africa/Windhoek|WAST WAT|-20 
-10|01010101010101010101010|1C1c0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 
1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0",
"America/Adak|HST HDT|a0 
90|01010101010101010101010|1BR00 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Anchorage|AKST AKDT|90 
80|01010101010101010101010|1BQX0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Anguilla|AST|40|0|",
-   "America/Araguaina|BRT BRST|30 20|010|1IdD0 Lz0",
"America/Argentina/Buenos_Aires|ART|30|0|",
-   "America/Asuncion|PYST PYT|30 
40|01010101010101010101010|1C430 1a10 1fz0 1a10 1fz0 1cN0 17b0 1ip0 17b0 1ip0 
17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0",
"America/Atikokan|EST|50|0|",
-   "America/Bahia|BRT BRST|30 20|010|1FJf0 Rb0",
-   "America/Bahia_Banderas|MST CDT CST|70 50 
60|01212121212121212121212|1C1l0 1nW0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 
14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0",
-   "America/Belem|BRT|30|0|",
"America/Belize|CST|60|0|",
"America/Boa_Vista|AMT|40|0|",
"America/Bogota|COT|50|0|",
"America/Boise|MST MDT|70 
60|01010101010101010101010|1BQV0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
-   "America/Campo_Grande|AMST AMT|30 
40|01010101010101010101010|1BIr0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 
1zd0 On0 1zd0 On0 1zd0 On0 1C10 Lz0 1C10 Lz0 1C10",
"America/Cancun|CST CDT EST|60 50 50|010101010102|1C1k0 
1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 Dd0",
"America/Caracas|VET|4u|0|",
-   "America/Cayenne|GFT|30|0|",
"America/Chicago|CST CDT|60 
50|01010101010101010101010|1BQU0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Chihuahua|MST MDT|70 
60|01010101010101010101010|1C1l0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 
14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0",
"America/Creston|MST|70|0|",
"America/Dawson|PST PDT|80 
70|01010101010101010101010|1BQW0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Detroit|EST EDT|50 
40|01010101010101010101010|1BQT0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
-   "America/Eirunepe|AMT ACT|40 50|01|1KLE0",
-   "America/Glace_Bay|AST ADT|40 
30|01010101010101010101010|1BQS0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
"America/Godthab|WGT WGST|30 
20|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 
11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00",
-   "America/Goose_Bay|AST ADT|40 
30|01010101010101010101010|1BQQ1 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 
1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
-   "America/Grand_Turk|EST EDT AST|50 40 
40|0101010101012|1BQT0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
-   "America/Guayaquil|ECT|50|0|",
-   "America/Guyana|GYT|40|0|",
"America/Havana|CST CDT|50 
40|01010101010101010101010|1BQR0 1wo0 U00 1zc0 U00 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 
1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0",
-   "America/La_Paz|BOT|40|0|",

ambari git commit: AMBARI-13453. Fix UI unit tests for admin-view

2015-10-16 Thread alexantonenko
Repository: ambari
Updated Branches:
  refs/heads/trunk 8bb2b14fb -> 88175691e


AMBARI-13453. Fix UI unit tests for admin-view


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/88175691
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/88175691
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/88175691

Branch: refs/heads/trunk
Commit: 88175691e6d414ccca6d07fb33cf7412419b913d
Parents: 8bb2b14
Author: Alex Antonenko 
Authored: Fri Oct 16 16:34:58 2015 +0300
Committer: Alex Antonenko 
Committed: Fri Oct 16 16:39:57 2015 +0300

--
 .../unit/controllers/CreateViewInstanceCtrl.js | 14 +-
 .../test/unit/controllers/mainCtrl_test.js | 17 +++--
 2 files changed, 28 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/88175691/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/CreateViewInstanceCtrl.js
--
diff --git 
a/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/CreateViewInstanceCtrl.js
 
b/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/CreateViewInstanceCtrl.js
index cd71d11..35ddc16 100644
--- 
a/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/CreateViewInstanceCtrl.js
+++ 
b/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/CreateViewInstanceCtrl.js
@@ -53,6 +53,7 @@ describe('#CreateViewInstanceCtrl', function () {
   }
 };
 $httpBackend.flush();
+scope.instance = {};
 scope.save();
 expect(View.createInstance).toHaveBeenCalled();
   });
@@ -63,11 +64,22 @@ describe('#CreateViewInstanceCtrl', function () {
 $dirty: true
   }
 };
+scope.instance = {};
 scope.version = '1.0.0';
 $httpBackend.expectGET('template/modal/backdrop.html');
 $httpBackend.expectGET('template/modal/window.html');
+$httpBackend.whenGET(/\/api\/v1\/clusters\?_=\d+/).respond(200, {
+  "items" : [
+{
+  "Clusters" : {
+"cluster_name" : "c1",
+"version" : "HDP-2.2"
+  }
+}
+  ]
+});
 scope.$digest();
 $httpBackend.flush();
 chai.expect(scope.view.ViewVersionInfo.parameters[0].value).to.equal('d');
   });
-});
\ No newline at end of file
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/88175691/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/mainCtrl_test.js
--
diff --git 
a/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/mainCtrl_test.js
 
b/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/mainCtrl_test.js
index 0ba01a3..8d748d2 100644
--- 
a/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/mainCtrl_test.js
+++ 
b/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/mainCtrl_test.js
@@ -39,6 +39,15 @@ describe('#Auth', function () {
   });
   $window = _$window_;
   $httpBackend = _$httpBackend_;
+  var re = /api\/v1\/services\/AMBARI\/components\/AMBARI_SERVER.+/;
+  $httpBackend.whenGET(re).respond(200, {
+  RootServiceComponents: {
+component_version: 2.2,
+properties: {
+  'user.inactivity.timeout.default': 20
+}
+  }
+  });
   $httpBackend.whenGET(/\/api\/v1\/logout\?_=\d+/).respond(200,{message: 
"successfully logged out"});
   $httpBackend.whenGET(/\/api\/v1\/views.+/)
 .respond(200,{
@@ -95,7 +104,11 @@ describe('#Auth', function () {
 
 it('should reset window.location and ambari localstorage', function () {
   scope.signOut();
-  chai.expect($window.location.pathname).to.be.empty;
+
+  runs(function() {
+chai.expect($window.location.pathname).to.be.empty;
+  });
+
   var data = JSON.parse(localStorage.ambari);
   chai.expect(data.app.authenticated).to.equal(undefined);
   chai.expect(data.app.loginName).to.equal(undefined);
@@ -110,4 +123,4 @@ describe('#Auth', function () {
   
chai.expect(scope.viewInstances[0].instance_name).to.equal('VisibleInstance');
 });
   });
-});
\ No newline at end of file
+});



ambari git commit: AMBARI-13455. Ambari QE Deploy Test - Kerberos service check fails (akovalenko)

2015-10-16 Thread akovalenko
Repository: ambari
Updated Branches:
  refs/heads/trunk e89a0036a -> 2f7184af4


AMBARI-13455. Ambari QE Deploy Test - Kerberos service check fails (akovalenko)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/2f7184af
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/2f7184af
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/2f7184af

Branch: refs/heads/trunk
Commit: 2f7184af40599922e1e23b0150cf9c9c9d78cfc3
Parents: e89a003
Author: Aleksandr Kovalenko 
Authored: Fri Oct 16 18:17:25 2015 +0300
Committer: Aleksandr Kovalenko 
Committed: Fri Oct 16 18:17:25 2015 +0300

--
 .../app/controllers/main/admin/kerberos/wizard_controller.js   | 6 ++
 1 file changed, 6 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/2f7184af/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
--
diff --git 
a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js 
b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
index e0e146a..cb7ae74 100644
--- a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
+++ b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
@@ -241,7 +241,13 @@ App.KerberosWizardController = 
App.WizardController.extend(App.InstallComponent,
   {
 type: 'sync',
 callback: function () {
+  var self = this;
   this.loadKerberosOption();
+  if (App.get('supports.storeKDCCredentials')) {
+
credentialsUtils.isStorePersisted(App.get('clusterName')).then(function(isPersisted)
 {
+  self.set('content.secureStoragePersisted', isPersisted);
+});
+  }
 }
   }
 ],



ambari git commit: AMBARI-13455. Ambari QE Deploy Test - Kerberos service check fails (akovalenko)

2015-10-16 Thread akovalenko
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 60ae0778c -> 43251da19


AMBARI-13455. Ambari QE Deploy Test - Kerberos service check fails (akovalenko)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/43251da1
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/43251da1
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/43251da1

Branch: refs/heads/branch-2.1
Commit: 43251da1998cf1c321162448f30dca1276d71cb0
Parents: 60ae077
Author: Aleksandr Kovalenko 
Authored: Fri Oct 16 18:03:27 2015 +0300
Committer: Aleksandr Kovalenko 
Committed: Fri Oct 16 18:04:19 2015 +0300

--
 .../main/admin/kerberos/wizard_controller.js| 22 ++--
 1 file changed, 6 insertions(+), 16 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/43251da1/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
--
diff --git 
a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js 
b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
index 2f15221..71095da 100644
--- a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
+++ b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js
@@ -236,7 +236,13 @@ App.KerberosWizardController = 
App.WizardController.extend(App.InstallComponent,
   {
 type: 'sync',
 callback: function () {
+  var self = this;
   this.loadKerberosOption();
+  if (App.get('supports.storeKDCCredentials')) {
+
credentialsUtils.isStorePersisted(App.get('clusterName')).then(function(isPersisted)
 {
+  self.set('content.secureStoragePersisted', isPersisted);
+});
+  }
 }
   }
 ],
@@ -252,22 +258,6 @@ App.KerberosWizardController = 
App.WizardController.extend(App.InstallComponent,
 }, this);
   }
 }
-  },
-  {
-type: 'async',
-callback: function() {
-  var self = this;
-  var dfd = $.Deferred();
-  if (App.get('supports.storeKDCCredentials')) {
-
credentialsUtils.isStorePersisted(App.get('clusterName')).then(function(isPersisted)
 {
-  self.set('content.secureStoragePersisted', isPersisted);
-  dfd.resolve();
-});
-  } else {
-dfd.resolve();
-  }
-  return dfd.promise();
-}
   }
 ],
 '3': [



ambari git commit: AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)

2015-10-16 Thread jluniya
Repository: ambari
Updated Branches:
  refs/heads/trunk 2f7184af4 -> ce356ddc8


AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/ce356ddc
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/ce356ddc
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/ce356ddc

Branch: refs/heads/trunk
Commit: ce356ddc8ca233737e270fec097381192bc4bcb8
Parents: 2f7184a
Author: Jayush Luniya 
Authored: Fri Oct 16 08:43:13 2015 -0700
Committer: Jayush Luniya 
Committed: Fri Oct 16 08:43:13 2015 -0700

--
 .../libraries/functions/namenode_ha_utils.py| 27 ++--
 1 file changed, 25 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/ce356ddc/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
--
diff --git 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
index 99f90b8..0920e85 100644
--- 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
+++ 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
@@ -23,6 +23,8 @@ from resource_management.libraries.functions.format import 
format
 from resource_management.libraries.functions.jmx import get_value_from_jmx
 from resource_management.core.base import Fail
 from resource_management.core import shell
+from resource_management.core.logger import Logger
+from resource_management.libraries.functions.decorator import retry
 
 __all__ = ["get_namenode_states", "get_active_namenode", 
"get_property_for_active_namenode"]
 
@@ -32,8 +34,29 @@ HDFS_NN_STATE_STANDBY = 'standby'
 NAMENODE_HTTP_FRAGMENT = 'dfs.namenode.http-address.{0}.{1}'
 NAMENODE_HTTPS_FRAGMENT = 'dfs.namenode.https-address.{0}.{1}'
 JMX_URI_FRAGMENT = 
"{0}://{1}/jmx?qry=Hadoop:service=NameNode,name=FSNamesystem"
-  
-def get_namenode_states(hdfs_site, security_enabled, run_user):
+
+def get_namenode_states(hdfs_site, security_enabled, run_user, times=10, 
sleep_time=1, backoff_factor=2):
+  """
+  return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
+  """
+  @retry(times=times, sleep_time=sleep_time, backoff_factor=backoff_factor, 
err_class=Fail)
+  def doRetries(hdfs_site, security_enabled, run_user):
+doRetries.attempt += 1
+active_namenodes, standby_namenodes, unknown_namenodes = 
get_namenode_states_noretries(hdfs_site, security_enabled, run_user)
+Logger.info(
+  "NameNode HA states: active_namenodes = {0}, standby_namenodes = {1}, 
unknown_namenodes = {2}".format(
+active_namenodes, standby_namenodes, unknown_namenodes))
+if active_namenodes:
+  return active_namenodes, standby_namenodes, unknown_namenodes
+elif doRetries.attempt == times:
+  Logger.warning("No active NameNode was found after {0} retries. Will 
return current NameNode HA states".format(times))
+  return active_namenodes, standby_namenodes, unknown_namenodes
+raise Fail('No active NameNode was found.')
+
+  doRetries.attempt = 0
+  return doRetries(hdfs_site, security_enabled, run_user)
+
+def get_namenode_states_noretries(hdfs_site, security_enabled, run_user):
   """
   return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
   """



[1/2] ambari git commit: AMBARI-13454. Make HDP 2.0 stack inactive for Ambari 2.1.3 (aonishuk)

2015-10-16 Thread aonishuk
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 05c000b8c -> ce74af8aa
  refs/heads/trunk 88175691e -> e3958e2da


AMBARI-13454. Make HDP 2.0 stack inactive for Ambari 2.1.3 (aonishuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/e3958e2d
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/e3958e2d
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/e3958e2d

Branch: refs/heads/trunk
Commit: e3958e2da099f783ce637a57d752353fafd3f5b9
Parents: 8817569
Author: Andrew Onishuk 
Authored: Fri Oct 16 17:25:05 2015 +0300
Committer: Andrew Onishuk 
Committed: Fri Oct 16 17:25:05 2015 +0300

--
 .../2.1.0.2.0/package/scripts/params_linux.py   |  7 +-
 .../0.12.0.2.0/package/scripts/params_linux.py  | 20 +---
 .../4.0.0.2.0/package/scripts/params_linux.py   |  2 +-
 .../2.0.6/hooks/after-INSTALL/scripts/params.py |  6 +
 .../2.0.6/hooks/before-ANY/scripts/params.py|  6 +
 .../2.0.6/hooks/before-START/scripts/params.py  |  6 +
 .../main/resources/stacks/HDP/2.0/metainfo.xml  |  2 +-
 .../stacks/2.0.6/HIVE/test_hcat_client.py   |  8 +++
 .../stacks/2.0.6/HIVE/test_hive_metastore.py|  8 +++
 .../stacks/2.0.6/HIVE/test_webhcat_server.py| 24 ++--
 10 files changed, 36 insertions(+), 53 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/e3958e2d/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
--
diff --git 
a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
 
b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
index 38eac2e..4cbce34 100644
--- 
a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
+++ 
b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/params_linux.py
@@ -106,12 +106,7 @@ hdfs_user_nofile_limit = 
default("/configurations/hadoop-env/hdfs_user_nofile_li
 hdfs_user_nproc_limit = 
default("/configurations/hadoop-env/hdfs_user_nproc_limit", "65536")
 
 create_lib_snappy_symlinks = not Script.is_hdp_stack_greater_or_equal("2.2")
-
-if Script.is_hdp_stack_greater_or_equal("2.0") and 
Script.is_hdp_stack_less_than("2.1") and not OSCheck.is_suse_family():
-  # deprecated rhel jsvc_path
-  jsvc_path = "/usr/libexec/bigtop-utils"
-else:
-  jsvc_path = "/usr/lib/bigtop-utils"
+jsvc_path = "/usr/lib/bigtop-utils"
 
 execute_path = os.environ['PATH'] + os.pathsep + hadoop_bin_dir
 ulimit_cmd = "ulimit -c unlimited ; "

http://git-wip-us.apache.org/repos/asf/ambari/blob/e3958e2d/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
--
diff --git 
a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
 
b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
index e16df78..14cf1ac 100644
--- 
a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
+++ 
b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
@@ -49,7 +49,7 @@ hostname = config["hostname"]
 # This is expected to be of the form #.#.#.#
 stack_version_unformatted = str(config['hostLevelParams']['stack_version'])
 hdp_stack_version_major = format_hdp_stack_version(stack_version_unformatted)
-stack_is_hdp21 = Script.is_hdp_stack_greater_or_equal("2.0") and 
Script.is_hdp_stack_less_than("2.2")
+stack_is_hdp21 = Script.is_hdp_stack_less_than("2.2")
 
 # this is not available on INSTALL action because hdp-select is not available
 hdp_stack_version = functions.get_hdp_version('hive-server2')
@@ -83,10 +83,6 @@ sqoop_tar_file = '/usr/share/HDP-webhcat/sqoop*.tar.gz'
 hive_specific_configs_supported = False
 hive_etc_dir_prefix = "/etc/hive"
 limits_conf_dir = "/etc/security/limits.d"
-hcat_conf_dir = '/etc/hcatalog/conf'
-config_dir = '/etc/hcatalog/conf'
-hcat_lib = '/usr/lib/hcatalog/share/hcatalog'
-webhcat_bin_dir = '/usr/lib/hcatalog/sbin'
 
 hive_user_nofile_limit = 
default("/configurations/hive-env/hive_user_nofile_limit", "32000")
 hive_user_nproc_limit = 
default("/configurations/hive-env/hive_user_nproc_limit", "16000")
@@ -101,11 +97,10 @@ hive_config_dir = status_params.hive_config_dir
 hive_client_conf_dir = status_params.hive_client_conf_dir
 hive_server_conf_dir = status_params.hive_server_conf_dir
 
-if Script.is_hdp_stack_greater_or_equal("2.1"):
-  hcat_conf_dir = '/etc/hive-hcatalog/conf'
-  config_dir = 

[1/2] ambari git commit: AMBARI-13452. RegionServer Upgrade verification is not case sensitive (aonishuk)

2015-10-16 Thread aonishuk
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 ce74af8aa -> 60ae0778c
  refs/heads/trunk e3958e2da -> e89a0036a


AMBARI-13452. RegionServer Upgrade verification is not case sensitive (aonishuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/e89a0036
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/e89a0036
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/e89a0036

Branch: refs/heads/trunk
Commit: e89a0036a4155e40ee53c3efa6b77defcbd2aece
Parents: e3958e2
Author: Andrew Onishuk 
Authored: Fri Oct 16 17:59:01 2015 +0300
Committer: Andrew Onishuk 
Committed: Fri Oct 16 17:59:01 2015 +0300

--
 .../HBASE/0.96.0.2.0/package/scripts/upgrade.py| 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/e89a0036/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 a9ccede..00040fa 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
@@ -40,12 +40,12 @@ def post_regionserver(env):
   check_cmd = "echo 'status \"simple\"' | {0} shell".format(params.hbase_cmd)
 
   exec_cmd = "{0} {1}".format(params.kinit_cmd, check_cmd)
-  call_and_match(exec_cmd, params.hbase_user, params.hostname + ":")
+  call_and_match(exec_cmd, params.hbase_user, params.hostname + ":", 
re.IGNORECASE)
 
 @retry(times=15, sleep_time=2, err_class=Fail)
-def call_and_match(cmd, user, regex):
+def call_and_match(cmd, user, regex, regex_search_flags):
 
   code, out = shell.call(cmd, user=user)
 
-  if not (out and re.search(regex, out)):
+  if not (out and re.search(regex, out, regex_search_flags)):
 raise Fail("Could not verify RS available")



[2/2] ambari git commit: AMBARI-13452. RegionServer Upgrade verification is not case sensitive (aonishuk)

2015-10-16 Thread aonishuk
AMBARI-13452. RegionServer Upgrade verification is not case sensitive (aonishuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/60ae0778
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/60ae0778
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/60ae0778

Branch: refs/heads/branch-2.1
Commit: 60ae0778c6e165a3b4ecc23f76f66c20893e3b59
Parents: ce74af8
Author: Andrew Onishuk 
Authored: Fri Oct 16 17:59:03 2015 +0300
Committer: Andrew Onishuk 
Committed: Fri Oct 16 17:59:03 2015 +0300

--
 .../HBASE/0.96.0.2.0/package/scripts/upgrade.py| 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/60ae0778/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 a9ccede..00040fa 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
@@ -40,12 +40,12 @@ def post_regionserver(env):
   check_cmd = "echo 'status \"simple\"' | {0} shell".format(params.hbase_cmd)
 
   exec_cmd = "{0} {1}".format(params.kinit_cmd, check_cmd)
-  call_and_match(exec_cmd, params.hbase_user, params.hostname + ":")
+  call_and_match(exec_cmd, params.hbase_user, params.hostname + ":", 
re.IGNORECASE)
 
 @retry(times=15, sleep_time=2, err_class=Fail)
-def call_and_match(cmd, user, regex):
+def call_and_match(cmd, user, regex, regex_search_flags):
 
   code, out = shell.call(cmd, user=user)
 
-  if not (out and re.search(regex, out)):
+  if not (out and re.search(regex, out, regex_search_flags)):
 raise Fail("Could not verify RS available")



ambari git commit: AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)

2015-10-16 Thread jluniya
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 43251da19 -> e0c8707bd


AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/e0c8707b
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/e0c8707b
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/e0c8707b

Branch: refs/heads/branch-2.1
Commit: e0c8707bd16ea26e487e0136dc84e6c8b817f015
Parents: 43251da
Author: Jayush Luniya 
Authored: Fri Oct 16 08:43:13 2015 -0700
Committer: Jayush Luniya 
Committed: Fri Oct 16 08:44:55 2015 -0700

--
 .../libraries/functions/namenode_ha_utils.py| 27 ++--
 1 file changed, 25 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/e0c8707b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
--
diff --git 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
index 99f90b8..0920e85 100644
--- 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
+++ 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
@@ -23,6 +23,8 @@ from resource_management.libraries.functions.format import 
format
 from resource_management.libraries.functions.jmx import get_value_from_jmx
 from resource_management.core.base import Fail
 from resource_management.core import shell
+from resource_management.core.logger import Logger
+from resource_management.libraries.functions.decorator import retry
 
 __all__ = ["get_namenode_states", "get_active_namenode", 
"get_property_for_active_namenode"]
 
@@ -32,8 +34,29 @@ HDFS_NN_STATE_STANDBY = 'standby'
 NAMENODE_HTTP_FRAGMENT = 'dfs.namenode.http-address.{0}.{1}'
 NAMENODE_HTTPS_FRAGMENT = 'dfs.namenode.https-address.{0}.{1}'
 JMX_URI_FRAGMENT = 
"{0}://{1}/jmx?qry=Hadoop:service=NameNode,name=FSNamesystem"
-  
-def get_namenode_states(hdfs_site, security_enabled, run_user):
+
+def get_namenode_states(hdfs_site, security_enabled, run_user, times=10, 
sleep_time=1, backoff_factor=2):
+  """
+  return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
+  """
+  @retry(times=times, sleep_time=sleep_time, backoff_factor=backoff_factor, 
err_class=Fail)
+  def doRetries(hdfs_site, security_enabled, run_user):
+doRetries.attempt += 1
+active_namenodes, standby_namenodes, unknown_namenodes = 
get_namenode_states_noretries(hdfs_site, security_enabled, run_user)
+Logger.info(
+  "NameNode HA states: active_namenodes = {0}, standby_namenodes = {1}, 
unknown_namenodes = {2}".format(
+active_namenodes, standby_namenodes, unknown_namenodes))
+if active_namenodes:
+  return active_namenodes, standby_namenodes, unknown_namenodes
+elif doRetries.attempt == times:
+  Logger.warning("No active NameNode was found after {0} retries. Will 
return current NameNode HA states".format(times))
+  return active_namenodes, standby_namenodes, unknown_namenodes
+raise Fail('No active NameNode was found.')
+
+  doRetries.attempt = 0
+  return doRetries(hdfs_site, security_enabled, run_user)
+
+def get_namenode_states_noretries(hdfs_site, security_enabled, run_user):
   """
   return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
   """



ambari git commit: AMBARI-13444. Add a constant poller for admin web (rzang)

2015-10-16 Thread rzang
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 5af5f737a -> ca9584d78


AMBARI-13444. Add a constant poller for admin web (rzang)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/ca9584d7
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/ca9584d7
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/ca9584d7

Branch: refs/heads/branch-2.1
Commit: ca9584d783963db93fe677e0a1b6e934352c6a22
Parents: 5af5f73
Author: Richard Zang 
Authored: Fri Oct 16 15:22:30 2015 -0700
Committer: Richard Zang 
Committed: Fri Oct 16 15:23:52 2015 -0700

--
 .../ui/admin-web/app/scripts/controllers/mainCtrl.js | 8 
 1 file changed, 8 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/ca9584d7/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
--
diff --git 
a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
 
b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
index e16d1dc..2c9e1c9 100644
--- 
a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
+++ 
b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
@@ -118,11 +118,19 @@ angular.module('ambariAdminConsole')
 $rootScope.userActivityTimeoutInterval = 
window.setInterval(checkActiveness, 1000);
   };
 
+  // Send noop requests every 10 seconds just to keep backend session alive
+  $scope.startNoopPolling = function() {
+$rootScope.noopPollingInterval = setInterval(Cluster.getAmbariTimeout, 
1);
+  };
+
   if (!$rootScope.userActivityTimeoutInterval) {
 Cluster.getAmbariTimeout().then(function(timeout) {
   if (Number(timeout) > 0)
 $scope.startInactiveTimeoutMonitoring(timeout * 1000);
 });
   }
+  if (!$rootScope.noopPollingInterval) {
+$scope.startNoopPolling();
+  }
   $scope.updateInstances();
 }]);



ambari git commit: AMBARI-13444. Add a constant poller for admin web (rzang)

2015-10-16 Thread rzang
Repository: ambari
Updated Branches:
  refs/heads/trunk f6ff71b8c -> c9085317b


AMBARI-13444. Add a constant poller for admin web (rzang)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c9085317
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c9085317
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c9085317

Branch: refs/heads/trunk
Commit: c9085317bd65c100741a5655c59188df329128cc
Parents: f6ff71b
Author: Richard Zang 
Authored: Fri Oct 16 15:22:30 2015 -0700
Committer: Richard Zang 
Committed: Fri Oct 16 15:22:30 2015 -0700

--
 .../ui/admin-web/app/scripts/controllers/mainCtrl.js | 8 
 1 file changed, 8 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/c9085317/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
--
diff --git 
a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
 
b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
index e16d1dc..2c9e1c9 100644
--- 
a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
+++ 
b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/mainCtrl.js
@@ -118,11 +118,19 @@ angular.module('ambariAdminConsole')
 $rootScope.userActivityTimeoutInterval = 
window.setInterval(checkActiveness, 1000);
   };
 
+  // Send noop requests every 10 seconds just to keep backend session alive
+  $scope.startNoopPolling = function() {
+$rootScope.noopPollingInterval = setInterval(Cluster.getAmbariTimeout, 
1);
+  };
+
   if (!$rootScope.userActivityTimeoutInterval) {
 Cluster.getAmbariTimeout().then(function(timeout) {
   if (Number(timeout) > 0)
 $scope.startInactiveTimeoutMonitoring(timeout * 1000);
 });
   }
+  if (!$rootScope.noopPollingInterval) {
+$scope.startNoopPolling();
+  }
   $scope.updateInstances();
 }]);



ambari git commit: Revert "AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)"

2015-10-16 Thread jluniya
Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 e0c8707bd -> 61bf60bb7


Revert "AMBARI-13427: NAMENODE START failed with both NN's being passive 
(jluniya)"

This reverts commit e0c8707bd16ea26e487e0136dc84e6c8b817f015.


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/61bf60bb
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/61bf60bb
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/61bf60bb

Branch: refs/heads/branch-2.1
Commit: 61bf60bb7b78479af98964f42cc47a0f9142704f
Parents: e0c8707
Author: Jayush Luniya 
Authored: Fri Oct 16 09:28:09 2015 -0700
Committer: Jayush Luniya 
Committed: Fri Oct 16 09:28:09 2015 -0700

--
 .../libraries/functions/namenode_ha_utils.py| 27 ++--
 1 file changed, 2 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/61bf60bb/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
--
diff --git 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
index 0920e85..99f90b8 100644
--- 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
+++ 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
@@ -23,8 +23,6 @@ from resource_management.libraries.functions.format import 
format
 from resource_management.libraries.functions.jmx import get_value_from_jmx
 from resource_management.core.base import Fail
 from resource_management.core import shell
-from resource_management.core.logger import Logger
-from resource_management.libraries.functions.decorator import retry
 
 __all__ = ["get_namenode_states", "get_active_namenode", 
"get_property_for_active_namenode"]
 
@@ -34,29 +32,8 @@ HDFS_NN_STATE_STANDBY = 'standby'
 NAMENODE_HTTP_FRAGMENT = 'dfs.namenode.http-address.{0}.{1}'
 NAMENODE_HTTPS_FRAGMENT = 'dfs.namenode.https-address.{0}.{1}'
 JMX_URI_FRAGMENT = 
"{0}://{1}/jmx?qry=Hadoop:service=NameNode,name=FSNamesystem"
-
-def get_namenode_states(hdfs_site, security_enabled, run_user, times=10, 
sleep_time=1, backoff_factor=2):
-  """
-  return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
-  """
-  @retry(times=times, sleep_time=sleep_time, backoff_factor=backoff_factor, 
err_class=Fail)
-  def doRetries(hdfs_site, security_enabled, run_user):
-doRetries.attempt += 1
-active_namenodes, standby_namenodes, unknown_namenodes = 
get_namenode_states_noretries(hdfs_site, security_enabled, run_user)
-Logger.info(
-  "NameNode HA states: active_namenodes = {0}, standby_namenodes = {1}, 
unknown_namenodes = {2}".format(
-active_namenodes, standby_namenodes, unknown_namenodes))
-if active_namenodes:
-  return active_namenodes, standby_namenodes, unknown_namenodes
-elif doRetries.attempt == times:
-  Logger.warning("No active NameNode was found after {0} retries. Will 
return current NameNode HA states".format(times))
-  return active_namenodes, standby_namenodes, unknown_namenodes
-raise Fail('No active NameNode was found.')
-
-  doRetries.attempt = 0
-  return doRetries(hdfs_site, security_enabled, run_user)
-
-def get_namenode_states_noretries(hdfs_site, security_enabled, run_user):
+  
+def get_namenode_states(hdfs_site, security_enabled, run_user):
   """
   return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
   """



ambari git commit: Revert "AMBARI-13427: NAMENODE START failed with both NN's being passive (jluniya)"

2015-10-16 Thread jluniya
Repository: ambari
Updated Branches:
  refs/heads/trunk ce356ddc8 -> dec7c8eed


Revert "AMBARI-13427: NAMENODE START failed with both NN's being passive 
(jluniya)"

This reverts commit ce356ddc8ca233737e270fec097381192bc4bcb8.


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/dec7c8ee
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/dec7c8ee
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/dec7c8ee

Branch: refs/heads/trunk
Commit: dec7c8eed63393e8fbc5e3114695eb6b43b6c25e
Parents: ce356dd
Author: Jayush Luniya 
Authored: Fri Oct 16 09:26:20 2015 -0700
Committer: Jayush Luniya 
Committed: Fri Oct 16 09:26:20 2015 -0700

--
 .../libraries/functions/namenode_ha_utils.py| 27 ++--
 1 file changed, 2 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ambari/blob/dec7c8ee/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
--
diff --git 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
index 0920e85..99f90b8 100644
--- 
a/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
+++ 
b/ambari-common/src/main/python/resource_management/libraries/functions/namenode_ha_utils.py
@@ -23,8 +23,6 @@ from resource_management.libraries.functions.format import 
format
 from resource_management.libraries.functions.jmx import get_value_from_jmx
 from resource_management.core.base import Fail
 from resource_management.core import shell
-from resource_management.core.logger import Logger
-from resource_management.libraries.functions.decorator import retry
 
 __all__ = ["get_namenode_states", "get_active_namenode", 
"get_property_for_active_namenode"]
 
@@ -34,29 +32,8 @@ HDFS_NN_STATE_STANDBY = 'standby'
 NAMENODE_HTTP_FRAGMENT = 'dfs.namenode.http-address.{0}.{1}'
 NAMENODE_HTTPS_FRAGMENT = 'dfs.namenode.https-address.{0}.{1}'
 JMX_URI_FRAGMENT = 
"{0}://{1}/jmx?qry=Hadoop:service=NameNode,name=FSNamesystem"
-
-def get_namenode_states(hdfs_site, security_enabled, run_user, times=10, 
sleep_time=1, backoff_factor=2):
-  """
-  return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
-  """
-  @retry(times=times, sleep_time=sleep_time, backoff_factor=backoff_factor, 
err_class=Fail)
-  def doRetries(hdfs_site, security_enabled, run_user):
-doRetries.attempt += 1
-active_namenodes, standby_namenodes, unknown_namenodes = 
get_namenode_states_noretries(hdfs_site, security_enabled, run_user)
-Logger.info(
-  "NameNode HA states: active_namenodes = {0}, standby_namenodes = {1}, 
unknown_namenodes = {2}".format(
-active_namenodes, standby_namenodes, unknown_namenodes))
-if active_namenodes:
-  return active_namenodes, standby_namenodes, unknown_namenodes
-elif doRetries.attempt == times:
-  Logger.warning("No active NameNode was found after {0} retries. Will 
return current NameNode HA states".format(times))
-  return active_namenodes, standby_namenodes, unknown_namenodes
-raise Fail('No active NameNode was found.')
-
-  doRetries.attempt = 0
-  return doRetries(hdfs_site, security_enabled, run_user)
-
-def get_namenode_states_noretries(hdfs_site, security_enabled, run_user):
+  
+def get_namenode_states(hdfs_site, security_enabled, run_user):
   """
   return format [('nn1', 'hdfs://hostname1:port1'), ('nn2', 
'hdfs://hostname2:port2')] , [], []
   """