ambari-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jlun...@apache.org
Subject [07/52] [abbrv] ambari git commit: AMBARI-21614. Restart NFSGateway fails after ResourceManager move to another host (aonishuk)
Date Wed, 09 Aug 2017 15:55:20 GMT
AMBARI-21614. Restart NFSGateway fails after ResourceManager move to another host (aonishuk)


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

Branch: refs/heads/branch-feature-AMBARI-14714
Commit: 11aadf532f3ecdfcfed727346ea4f3418aa1deb2
Parents: c7b350b
Author: Andrew Onishuk <aonishuk@hortonworks.com>
Authored: Tue Aug 1 12:45:49 2017 +0300
Committer: Andrew Onishuk <aonishuk@hortonworks.com>
Committed: Tue Aug 1 12:45:49 2017 +0300

----------------------------------------------------------------------
 .../HDFS/2.1.0.2.0/package/scripts/utils.py         | 15 ++++++++++++++-
 .../HDFS/3.0.0.3.0/package/scripts/utils.py         | 16 +++++++++++++++-
 .../test/python/stacks/2.0.6/HDFS/test_namenode.py  |  2 +-
 3 files changed, 30 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/11aadf53/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/utils.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/utils.py
b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/utils.py
index 2535f60..f178d23 100644
--- a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/utils.py
+++ b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/utils.py
@@ -19,6 +19,7 @@ limitations under the License.
 import os
 import re
 import urllib2
+import subprocess
 import ambari_simplejson as json # simplejson is much faster comparing to Python 2.6 json
module and has the same functions set.
 
 from resource_management.core.resources.system import Directory, File, Execute
@@ -283,7 +284,19 @@ def service(action=None, name=None, user=None, options="", create_pid_dir=False,
       show_logs(log_dir, user)
       raise
 
-    wait_process_stopped(pid_file)
+    # Wait until stop actually happens
+    process_id_does_not_exist_command = format("! ( {process_id_exists_command} )")
+    code, out = shell.call(process_id_does_not_exist_command,
+            env=hadoop_env_exports,
+            tries = 6,
+            try_sleep = 10,
+    )
+
+    # If stop didn't happen, kill it forcefully
+    if code != 0:
+      code, out, err = shell.checked_call(("cat", pid_file), sudo=True, env=hadoop_env_exports,
stderr=subprocess.PIPE)
+      pid = out
+      Execute(("kill", "-9", pid), sudo=True)
 
     File(pid_file, action="delete")
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/11aadf53/ambari-server/src/main/resources/common-services/HDFS/3.0.0.3.0/package/scripts/utils.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HDFS/3.0.0.3.0/package/scripts/utils.py
b/ambari-server/src/main/resources/common-services/HDFS/3.0.0.3.0/package/scripts/utils.py
index 0c28a00..11fde02 100644
--- a/ambari-server/src/main/resources/common-services/HDFS/3.0.0.3.0/package/scripts/utils.py
+++ b/ambari-server/src/main/resources/common-services/HDFS/3.0.0.3.0/package/scripts/utils.py
@@ -279,7 +279,21 @@ def service(action=None, name=None, user=None, options="", create_pid_dir=False,
     except:
       show_logs(log_dir, user)
       raise
-    wait_process_stopped(pid_file)
+      
+    # Wait until stop actually happens
+    process_id_does_not_exist_command = format("! ( {process_id_exists_command} )")
+    code, out = shell.call(process_id_does_not_exist_command,
+            env=hadoop_env_exports,
+            tries = 6,
+            try_sleep = 10,
+    )
+
+    # If stop didn't happen, kill it forcefully
+    if code != 0:
+      code, out, err = shell.checked_call(("cat", pid_file), sudo=True, env=hadoop_env_exports,
stderr=subprocess.PIPE)
+      pid = out
+      Execute(("kill", "-9", pid), sudo=True)
+      
     File(pid_file, action="delete")
 
 def get_jmx_data(nn_address, modeler_type, metric, encrypted=False, security_enabled=False):

http://git-wip-us.apache.org/repos/asf/ambari/blob/11aadf53/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py b/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py
index e6503a2..eb595c1 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py
@@ -1351,7 +1351,7 @@ class TestNamenode(RMFTestCase):
                        config_file = "nn_eu_standby.json",
                        stack_version = self.STACK_VERSION,
                        target = RMFTestCase.TARGET_COMMON_SERVICES,
-                       call_mocks = [(0, None, ''), (0, None)],
+                       call_mocks = [(0, None), (0, None, ''), (0, None)] ,
                        mocks_dict=mocks_dict)
 
     calls = mocks_dict['call'].call_args_list


Mime
View raw message