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