You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by jl...@apache.org on 2015/06/06 00:27:57 UTC
ambari git commit: AMBARI-11739: fixed a repo creation issue when
repo creation is called from multiple server simultaneously (Selvamohan
Neethiraj via jluniya)
Repository: ambari
Updated Branches:
refs/heads/trunk 4afac3006 -> f42450910
AMBARI-11739: fixed a repo creation issue when repo creation is called from multiple server simultaneously (Selvamohan Neethiraj via jluniya)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/f4245091
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/f4245091
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/f4245091
Branch: refs/heads/trunk
Commit: f4245091058f8b1e6a1bd094f147134f9305dd82
Parents: 4afac30
Author: Jayush Luniya <jl...@hortonworks.com>
Authored: Fri Jun 5 15:27:51 2015 -0700
Committer: Jayush Luniya <jl...@hortonworks.com>
Committed: Fri Jun 5 15:27:51 2015 -0700
----------------------------------------------------------------------
.../libraries/functions/ranger_functions.py | 24 +++++++++++++-------
1 file changed, 16 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/f4245091/ambari-common/src/main/python/resource_management/libraries/functions/ranger_functions.py
----------------------------------------------------------------------
diff --git a/ambari-common/src/main/python/resource_management/libraries/functions/ranger_functions.py b/ambari-common/src/main/python/resource_management/libraries/functions/ranger_functions.py
index 54be2c4..e4b1744 100644
--- a/ambari-common/src/main/python/resource_management/libraries/functions/ranger_functions.py
+++ b/ambari-common/src/main/python/resource_management/libraries/functions/ranger_functions.py
@@ -87,15 +87,23 @@ class Rangeradmin:
ambari_ranger_admin, ambari_ranger_password = self.create_ambari_admin_user(ambari_ranger_admin, ambari_ranger_password, format("{admin_uname}:{admin_password}"))
ambari_username_password_for_ranger = ambari_ranger_admin + ':' + ambari_ranger_password
if ambari_ranger_admin != '' and ambari_ranger_password != '':
- repo = self.get_repository_by_name_urllib2(repo_name, component, 'true', ambari_username_password_for_ranger)
- if repo and repo['name'] == repo_name:
- Logger.info('{0} Repository exist'.format(component.title()))
- else:
- response = self.create_repository_urllib2(repo_data, ambari_username_password_for_ranger, policy_user)
- if response is not None:
- Logger.info('{0} Repository created in Ranger admin'.format(component.title()))
+ retryCount = 0
+ while retryCount <= 5:
+ repo = self.get_repository_by_name_urllib2(repo_name, component, 'true', ambari_username_password_for_ranger)
+ if repo and repo['name'] == repo_name:
+ Logger.info('{0} Repository exist'.format(component.title()))
+ break
else:
- raise Fail('{0} Repository creation failed in Ranger admin'.format(component.title()))
+ response = self.create_repository_urllib2(repo_data, ambari_username_password_for_ranger, policy_user)
+ if response is not None:
+ Logger.info('{0} Repository created in Ranger admin'.format(component.title()))
+ break
+ else:
+ if retryCount < 5:
+ Logger.info("Retry Repository Creation is being called")
+ retryCount += 1
+ else:
+ raise Fail('{0} Repository creation failed in Ranger admin'.format(component.title()))
else:
raise Fail('Ambari admin username and password are blank ')