You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by te...@apache.org on 2014/10/08 00:03:59 UTC

git commit: HBASE-12195 Fix dev-support/findHangingTests (Manukranth Kolloju)

Repository: hbase
Updated Branches:
  refs/heads/master a8be60614 -> cab081932


HBASE-12195 Fix dev-support/findHangingTests (Manukranth Kolloju)


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

Branch: refs/heads/master
Commit: cab0819327cb719cb6932bb7d2c2e121e5aac03c
Parents: a8be606
Author: Ted Yu <te...@apache.org>
Authored: Tue Oct 7 22:03:50 2014 +0000
Committer: Ted Yu <te...@apache.org>
Committed: Tue Oct 7 22:03:50 2014 +0000

----------------------------------------------------------------------
 dev-support/findHangingTest.sh  | 40 --------------------------
 dev-support/findHangingTests.py | 54 ++++++++++++++++++++++++++++++++++++
 2 files changed, 54 insertions(+), 40 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/cab08193/dev-support/findHangingTest.sh
----------------------------------------------------------------------
diff --git a/dev-support/findHangingTest.sh b/dev-support/findHangingTest.sh
deleted file mode 100755
index f7ebe47..0000000
--- a/dev-support/findHangingTest.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-##
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-##
-# script to find hanging test from Jenkins build output
-# usage: ./findHangingTest.sh <url of Jenkins build console>
-#
-`curl -k -o jenkins.out "$1"`
-expecting=Running
-cat jenkins.out | while read line; do
- if [[ "$line" =~ "Running org.apache.hadoop" ]]; then
-  if [[ "$expecting" =~ "Running" ]]; then 
-   expecting=Tests
-  else
-   echo "Hanging test: $prevLine"
-  fi
- fi
- if [[ "$line" =~ "Tests run" ]]; then
-  expecting=Running
- fi
- if [[ "$line" =~ "Forking command line" ]]; then
-  a=$line
- else
-  prevLine=$line
- fi
-done

http://git-wip-us.apache.org/repos/asf/hbase/blob/cab08193/dev-support/findHangingTests.py
----------------------------------------------------------------------
diff --git a/dev-support/findHangingTests.py b/dev-support/findHangingTests.py
new file mode 100644
index 0000000..f51e7f5
--- /dev/null
+++ b/dev-support/findHangingTests.py
@@ -0,0 +1,54 @@
+#!/usr/bin/python
+##
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+##
+# script to find hanging test from Jenkins build output
+# usage: ./findHangingTests.py <url of Jenkins build console>
+#
+import urllib2
+import sys
+import string
+if len(sys.argv) != 2 :
+  print "ERROR : Provide the jenkins job console URL as the only argument."
+  exit(1)
+print "Fetching the console output from the URL"
+response = urllib2.urlopen(sys.argv[1])
+i = 0;
+tests = {}
+failed_tests = {}
+while True:
+  n = response.readline()
+  if n == "" :
+    break
+  if n.find("org.apache.hadoop.hbase") < 0:
+    continue 
+  test_name = string.strip(n[n.find("org.apache.hadoop.hbase"):len(n)])
+  if n.find("Running org.apache.hadoop.hbase") > -1 :
+    tests[test_name] = False
+  if n.find("Tests run:") > -1 :
+    if n.find("FAILURE") > -1 or n.find("ERROR") > -1:
+      failed_tests[test_name] = True
+    tests[test_name] = True
+response.close()
+
+print "Printing hanging tests"
+for key, value in tests.iteritems():
+  if value == False:
+    print "Hanging test : " + key
+print "Printing Failing tests"
+for key, value in failed_tests.iteritems():
+  print "Failing test : " + key