From 50a8b2f92e834b9b03c1064198e84bd7588b0e59 Mon Sep 17 00:00:00 2001 From: Murali Nandigama Date: Thu, 13 May 2010 14:33:35 -0700 Subject: [PATCH] cleanup/restore --- PREREQS | 6 + README | 3 + cleanup.sh | 2 + dbschema.py | 121 +++++ log_parser.py | 203 ++++++++ mappings.py | 95 ++++ sample-logs/leaks-log.txt | 268 +++++++++++ topfails/__init__.py | 0 topfails/images/img5846075.png | Bin 0 -> 15027 bytes topfails/images/nav12971480a.gif | Bin 0 -> 3265 bytes topfails/images/nav12971480i.gif | Bin 0 -> 2959 bytes topfails/images/nav12971481a.gif | Bin 0 -> 3286 bytes topfails/images/nav12971481i.gif | Bin 0 -> 2970 bytes topfails/images/nav12971482a.gif | Bin 0 -> 3278 bytes topfails/images/nav12971482i.gif | Bin 0 -> 2977 bytes topfails/images/nav12971483a.gif | Bin 0 -> 3387 bytes topfails/images/nav12971483i.gif | Bin 0 -> 3043 bytes topfails/images/nav12971484a.gif | Bin 0 -> 3083 bytes topfails/images/nav12971484i.gif | Bin 0 -> 2769 bytes topfails/manage.py | 11 + topfails/settings.py | 86 ++++ topfails/templates/base.html | 121 +++++ topfails/templates/viewer/Help.html | 21 + topfails/templates/viewer/README | 5 + topfails/templates/viewer/changeset.html | 9 + topfails/templates/viewer/changesets.html | 9 + topfails/templates/viewer/failswindow.html | 10 + topfails/templates/viewer/index.html | 15 + topfails/templates/viewer/latest.html | 15 + topfails/templates/viewer/test.html | 13 + topfails/templates/viewer/test.html.orig | 27 ++ topfails/templates/viewer/tests.html | 14 + topfails/templates/viewer/timeline.html | 72 +++ topfails/templates/viewer/topfails.html | 10 + topfails/templates/viewer/topfails.rar | Bin 0 -> 280990 bytes topfails/templates/viewer/tree.html | 9 + topfails/templates/viewer/trees.html | 10 + topfails/urls.py | 20 + topfails/viewer/__init__.py | 0 topfails/viewer/models.py | 115 +++++ topfails/viewer/views.py | 107 +++++ unittest-log.py | 532 +++++++++++++++++++++ 42 files changed, 1929 insertions(+) create mode 100644 PREREQS create mode 100644 README create mode 100755 cleanup.sh create mode 100755 dbschema.py create mode 100644 log_parser.py create mode 100755 mappings.py create mode 100644 sample-logs/leaks-log.txt create mode 100644 topfails/__init__.py create mode 100755 topfails/images/img5846075.png create mode 100755 topfails/images/nav12971480a.gif create mode 100755 topfails/images/nav12971480i.gif create mode 100755 topfails/images/nav12971481a.gif create mode 100755 topfails/images/nav12971481i.gif create mode 100755 topfails/images/nav12971482a.gif create mode 100755 topfails/images/nav12971482i.gif create mode 100755 topfails/images/nav12971483a.gif create mode 100755 topfails/images/nav12971483i.gif create mode 100755 topfails/images/nav12971484a.gif create mode 100755 topfails/images/nav12971484i.gif create mode 100755 topfails/manage.py create mode 100644 topfails/settings.py create mode 100755 topfails/templates/base.html create mode 100755 topfails/templates/viewer/Help.html create mode 100644 topfails/templates/viewer/README create mode 100755 topfails/templates/viewer/changeset.html create mode 100755 topfails/templates/viewer/changesets.html create mode 100644 topfails/templates/viewer/failswindow.html create mode 100755 topfails/templates/viewer/index.html create mode 100755 topfails/templates/viewer/latest.html create mode 100755 topfails/templates/viewer/test.html create mode 100755 topfails/templates/viewer/test.html.orig create mode 100755 topfails/templates/viewer/tests.html create mode 100755 topfails/templates/viewer/timeline.html create mode 100755 topfails/templates/viewer/topfails.html create mode 100755 topfails/templates/viewer/topfails.rar create mode 100755 topfails/templates/viewer/tree.html create mode 100755 topfails/templates/viewer/trees.html create mode 100644 topfails/urls.py create mode 100644 topfails/viewer/__init__.py create mode 100644 topfails/viewer/models.py create mode 100644 topfails/viewer/views.py create mode 100755 unittest-log.py diff --git a/PREREQS b/PREREQS new file mode 100644 index 0000000..65358f3 --- /dev/null +++ b/PREREQS @@ -0,0 +1,6 @@ +At the minimum, you should set the following environment variables + +Assuming you are using BASH shell + +export dbuser= +export dbpasswd= diff --git a/README b/README new file mode 100644 index 0000000..5302e9b --- /dev/null +++ b/README @@ -0,0 +1,3 @@ +This is the README for the topfails application. + +Please read the 'PREREQS' document which will explain about the environment variables to be set in order to run the django application. diff --git a/cleanup.sh b/cleanup.sh new file mode 100755 index 0000000..fd9a17d --- /dev/null +++ b/cleanup.sh @@ -0,0 +1,2 @@ +rm `find . -name \*.pyc` +rm `find . -name \*~` diff --git a/dbschema.py b/dbschema.py new file mode 100755 index 0000000..868ea13 --- /dev/null +++ b/dbschema.py @@ -0,0 +1,121 @@ +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (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.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is TopFails site code. +# +# The Initial Developer of the Original Code is +# Mozilla foundation +# Portions created by the Initial Developer are Copyright (C) 2010 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): +# Murali Nandigama +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 2 or later (the "GPL"), or +# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** + +# +# DB schema maintenance functions. +# + +import logging + +__all__ = \ + [ + "CreateDBSchema" + ] + +def CreateDBSchema(conn): + logging.info("Executing CreateDBSchema()") + + + conn.execute(""" + CREATE TABLE viewer_tree ( + id integer AUTO_INCREMENT NOT NULL PRIMARY KEY, + name varchar(45) NOT NULL + ) + """) + + conn.execute(""" + CREATE TABLE viewer_build ( + id integer AUTO_INCREMENT NOT NULL PRIMARY KEY, + os integer NOT NULL, + tree_id integer NOT NULL, + starttime integer, + status integer NOT NULL, + changeset varchar(80) NOT NULL, + logfile varchar(300) NOT NULL + ) + """) + + conn.execute(""" + ALTER TABLE viewer_build + ADD CONSTRAINT tree_id_refs_id_11e44bee + FOREIGN KEY (tree_id) + REFERENCES viewer_tree (id) + """) + + conn.execute(""" + CREATE TABLE viewer_test ( + id integer AUTO_INCREMENT NOT NULL PRIMARY KEY, + name varchar(300) NOT NULL + ) + """) + + conn.execute(""" + CREATE TABLE viewer_testfailure ( + id integer AUTO_INCREMENT NOT NULL PRIMARY KEY, + build_id integer NOT NULL, + test_id integer NOT NULL, + failtext varchar(400) NOT NULL + ) + """) + + conn.execute(""" + ALTER TABLE viewer_testfailure + ADD CONSTRAINT test_id_refs_id_1cc1b9e6 + FOREIGN KEY (test_id) + REFERENCES viewer_test (id) + """) + + conn.execute(""" + ALTER TABLE viewer_testfailure + ADD CONSTRAINT build_id_refs_id_112c09cb + FOREIGN KEY (build_id) + REFERENCES viewer_build (id) + """) + + conn.execute(""" + CREATE INDEX viewer_build_tree_id ON viewer_build (tree_id) + """) + + conn.execute(""" + CREATE INDEX viewer_testfailure_build_id ON viewer_testfailure (build_id) + """) + + conn.execute(""" + CREATE INDEX viewer_testfailure_test_id ON viewer_testfailure (test_id) + """) + + diff --git a/log_parser.py b/log_parser.py new file mode 100644 index 0000000..d1e5f11 --- /dev/null +++ b/log_parser.py @@ -0,0 +1,203 @@ +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (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.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is TopFails site code. +# +# The Initial Developer of the Original Code is +# Mozilla foundation +# Portions created by the Initial Developer are Copyright (C) 2010 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): +# Jeff Hammel +# Murali Nandigama +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 2 or later (the "GPL"), or +# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** + +# TODO: document what all of the cases are, e.g +# +# - harness completes and automation.py hangs: +# "'62521 INFO TEST-PASS | /tests/content/xbl/test/test_bug542406.xhtml | Field three readonly?\n', +# '62523 INFO Passed: 60569\n', +# '62524 INFO Failed: 44\n', +# '62525 INFO Todo: 770\n', +# '62526 INFO SimpleTest FINISHED\n', +# 'TEST-UNEXPECTED-FAIL | automation.py | application timed out after 330 seconds with no output\n', +# "Can't trigger Breakpad, just killing process\n", +# 'INFO | automation.py | Application ran for: 0:24:44.270038\n', +# 'INFO | automation.py | Reading PID log: /var/folders/H5/H5TD8hgwEqKq9hgKlayjWU+++TM/-Tmp-/tmpEjNEf2pidlog\n', +# "WARNING | automationutils.processLeakLog() | refcount logging is off, so leaks can't be detected!\n", +# '\n', +# 'INFO | runtests.py | Running tests: end.\n', +# 'program finished with exit code 247\n', +# 'elapsedTime=1496.639870\n'," +# +# - leak at harness closure: see sample-logs/leaks-log.txt + +import re + +class LogParser(object): + """abstract base class for parsing unittest logs""" + + # 'TestFailed' expected log format is "result | test | optional text". + testfailedRe = re.compile(r"(TEST-UNEXPECTED-.*|PROCESS-CRASH) \| (.*) \|(.*)") + + def get_potentialTestName(self, line): + """return potential test name [None by default]""" + return None + + def processTestName(self, test, reason, potentialTestName, lines, idx): + """substitute the potential name for the test (if applicable)""" + + # for process crash, take the test-runner (automation) as the test failure + # (as already reported in test) and reset the potentialTestName to None + if 'PROCESS-CRASH' in reason: + return test, idx + + # an automation.py failure will ALWAYS be followed by a + # automationutils.processLeakLog line; so send a None here + # which will cause the parsing to continue and don't record this failure + if 'automation.py' in test: + return None, idx + + if 'automationutils.processLeakLog' and (potentialTestName is not None): + len_lines = len(lines) + while (idx+1) < len_lines and ('automationutils.processLeakLog' in lines[idx+1]): + idx += 1 + return potentialTestName, idx + + # if these conditions are not met, return + # the test name and potentialTestName untouched + return test, idx # no name substitution + + def parse(self, fp): + """ + parse the file, returning the test failures: + {'test': test, 'text': text, 'reason': mgroup(1)} ] + -fp: file-like object + """ + # Look for test failures. + failures = [] + lines = fp.readlines() + potentialTestName = None + + idx = 0 + while idx < len(lines): + line = lines[idx] + + # get the potential real name for reporting + # a test for an automation.py or automationutils.processLeakLog failure + potentialTestName = self.get_potentialTestName(line) or potentialTestName + + # test to see if the line is a failure + m = self.testfailedRe.match(line) + if not m: + idx += 1 + continue + + # reason for failure [TEST-UNEXPECTED-.* or PROCESS-CRASH] + reason = m.group(1).rstrip() + + # name of the test + test = m.group(2).strip() or "[unittest-log.py: no logged test]" + + # fail log text + text = m.group(3).strip() or "[unittest-log.py: no logged text]" + + # test to see if the harness hangs after a run completion + if lines[idx-1].strip().endswith('FINISHED'): + text = 'harness hangs after end of test run (or something)' + else: + # substitute potentialTestName for the test name if + # test is automation.py or automationutils.processLeakLog + test, idx = self.processTestName(test, reason, potentialTestName, lines, idx) + + if test is None: # don't add this test (and don't reset potentialTestName) + idx += 1 + continue + + # reset potentialTestName + potentialTestName = None + + # Code bits below try to change back slash to forward slash + # and get rid of varibale prepends to the /test/../.. names + if test.find('\\') != -1: + test = test.replace('\\','/') + if test.find('/') != -1: + tup=test.partition('build/') + if len(tup[2]) > 2: + test=tup[2] + else : + test=tup[0] + + # append interesting data to failures return value + failures.append({'test': test, 'text': text, 'reason': reason}) + + # increment the line counter + idx += 1 + + return failures + +class ReftestParser(LogParser): + """ + applies to + - Reftest + - Crashtest + - JSReftest + """ + + def get_potentialTestName(self, line): + """ + If it is jsreftest,crashtest we see 'INFO | Loading' in line + as the potential real test name + """ + if "INFO | Loading" in line: + return line.split('INFO | Loading ', 1)[-1] + + +class MochitestParser(LogParser): + """ + applies to + - Mochitest-plain + - Mochitest-chrome + - Mochitest-browserchrome + - Mochitest-a11y + """ + + def get_potentialTestName(self, line): + """Check all lines if they have INFO Running""" + if "INFO Running" in line: + return line.split('INFO Running ', 1)[-1].rstrip('.') # strip trailing ellipsis + + +class XPCshellParser(LogParser): + """ + parser XPCShell results + """ + +class CheckParser(LogParser): + """ + parses results from `make check` (C compiled code tests) + """ diff --git a/mappings.py b/mappings.py new file mode 100755 index 0000000..f243633 --- /dev/null +++ b/mappings.py @@ -0,0 +1,95 @@ +#!/usr/bin/env python +""" +Build name: + [type of build] + +Examples: + +The builder: build (e.g. 'Linux mozilla-central build') +-- in this case [type of build] is the string 'build' + +A debug test: debug test +-- in this case [type of build] is the string 'debug test ' + +An opt test: opt test + +A leak test: leak test + +Talos: + talos (e.g. 'Rev3 Fedora 12x64 mozilla-central talos') +-or- + talos (e.g. 'Rev3 Fedora 12x64 mozilla-central talos cold') + +Currently, the mappings are coded here (in python); this has the restriction +that the mappings cannot be (intelligently) programmatically updated. +If it is desired that the mappings may be undated programmatically +(e.g. from the command line), then a [presumedly text-ish] storage method +should be used for these mappings, e.g. an .ini file + +So.... + +All of this data lives in the buildbot-configs. +See http://hg.mozilla.org/build/buildbot-configs/file/tip/mozilla2/config.py +The mappings are duplicated here for expediency. + + - what really should happen is that this config file should be imported and + used here. In order for this to happen: + - the config.py file should be refactored so that it is consumable (and probably the entire buildbot-configs as well) + - buildbot-configs (or whatever this piece is refactored into) should + become a real python package or otherwise installable/depended upon +""" + +import re + +# OS mappings +OSes = [ 'Linux', + 'Linux x86-64', + 'OS X 10.5.2', + 'OS X 10.6.2', + 'Rev3 Fedora 12', + 'Rev3 Fedora 12x64', + 'Rev3 MacOSX Leopard 10.5.8', + 'Rev3 MacOSX Snow Leopard 10.6.2', + 'Rev3 WINNT 5.1', + 'Rev3 WINNT 6.1', + 'WINNT 5.2' ] +OS_to_index = dict([(OS, index) for index, OS in enumerate(OSes)]) +index_to_OS = dict([(index, OS) for index, OS in enumerate(OSes)]) +OSdata = { 'Linux': {'name': 'Linux', 'bits': 32 }, + 'Rev3 Fedora 12': { 'name': 'Fedora', 'bits': 32}, + 'Rev3 Fedora 12x64': { 'name': 'Fedora', 'bits': 64}, + 'Linux x86-64': { 'name': 'Linux', 'bits': 64}, + 'OS X 10.5.2': { 'name': 'MAC OSX', 'bits': 32}, + 'OS X 10.6.2': { 'name': 'MAC OSX', 'bits': 64}, + 'Rev3 MacOSX Leopard 10.5.8': { 'name': 'MAC OSX', 'bits': 32}, + 'Rev3 MacOSX Snow Leopard 10.6.2': { 'name': 'MAC OSX', 'bits': 64}, + 'Rev3 WINNT 5.1': { 'name': 'Windows', 'bits': 32}, + 'Rev3 WINNT 6.1': { 'name': 'Windows', 'bits': 64}, + 'WINNT 5.2': { 'name': 'Windows', 'bits': 32}, + } + +# branch objects +# branches = [ 'mozilla-central', +# 'mozilla-1.9.2', +# 'comm-central', +# 'comm-central-trunk' +# ] +trees = { 'Firefox': 'mozilla-central', + 'Firefox3.6': 'mozilla-1.9.2', + 'Thunderbird': 'comm-central', + 'SeaMonkey': 'comm-central-trunk', + } + +build_name_regex = r'(?P%s) (?P%s) (?P.*)' % ('|'.join(OSes), '|'.join(trees.values())) +build_name_regex = re.compile(build_name_regex) +def parse_build_name(name): + match = re.match(build_name_regex, name) + if match is None: + return None + return match.groupdict() + +if __name__ == '__main__': + import sys + for arg in sys.argv[1:]: + print parse_build_name(arg) + diff --git a/sample-logs/leaks-log.txt b/sample-logs/leaks-log.txt new file mode 100644 index 0000000..28f03f1 --- /dev/null +++ b/sample-logs/leaks-log.txt @@ -0,0 +1,268 @@ +Build Error Summary + +s: talos-r3-leopard-007 +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 725395 bytes during test execution +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of AsyncStatement with size 48 bytes each (96 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 213 instances of AtomImpl with size 20 bytes each (4260 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of BackstagePass with size 24 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of CSSImportRuleImpl with size 48 bytes each (144 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 53 instances of CSSImportantRule with size 16 bytes each (848 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 27 instances of CSSNameSpaceRuleImpl with size 44 bytes each (1188 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 547 instances of CSSStyleRuleImpl with size 48 bytes each (26256 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of Connection with size 100 bytes each (300 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of DR_State with size 40 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of History with size 44 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of HoldJSObjects with size 4 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of ImageObserver with size 8 bytes each (24 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of LiteralImpl with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 15 instances of Loader with size 192 bytes each (2880 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of MatchAutoCompleteFunction with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of NameSpaceManagerImpl with size 48 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of PrincipalHolder with size 16 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of RDFServiceImpl with size 276 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 13 instances of RuleHash with size 172 bytes each (2236 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of Service with size 36 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 69 instances of Statement with size 60 bytes each (4140 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of StatementParams with size 24 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of StringAdopt with size 1 bytes each (2 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 4 instances of URIAndPrincipalHashKey with size 12 bytes each (48 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of UploadLastDir with size 56 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of XPCContext with size 40 bytes each (560 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 55 instances of XPCNativeInterface with size 24 bytes each (1320 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 55 instances of XPCNativeMember with size 12 bytes each (660 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 50 instances of XPCNativeScriptableInfo with size 8 bytes each (400 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of XPCNativeScriptableShared with size 116 bytes each (696 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 22 instances of XPCNativeSet with size 8 bytes each (176 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 124 instances of XPCWrappedNative with size 56 bytes each (6944 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 52 instances of XPCWrappedNativeProto with size 32 bytes each (1664 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 46 instances of XPCWrappedNativeScope with size 64 bytes each (2944 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 23 instances of gfxFont with size 72 bytes each (1656 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 10 instances of gfxFontEntry with size 44 bytes each (440 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 8 instances of gfxGlyphExtents with size 40 bytes each (320 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 57 instances of gfxTextRun with size 96 bytes each (5472 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 11 instances of gfxTextRunFactory with size 12 bytes each (132 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of imgCacheEntry with size 32 bytes each (96 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of imgContainer with size 144 bytes each (432 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of imgLoader with size 44 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of imgRequest with size 152 bytes each (456 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of imgRequestProxy with size 44 bytes each (132 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of mozStorageFunctionGetUnreversedHost with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsAnnotationService with size 80 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 197 instances of nsAtomList with size 8 bytes each (1576 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 356 instances of nsAttrSelector with size 32 bytes each (11392 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsBaseURLParser with size 12 bytes each (36 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsBasicDecoderSupport with size 20 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsBidiKeyboard with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsBinaryOutputStream with size 20 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 15 instances of nsBindingManager with size 256 bytes each (3840 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of nsBoxLayout with size 12 bytes each (24 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsBufferedOutputStream with size 60 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsBufferedStream with size 44 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSAural with size 136 bytes each (816 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSBreaks with size 32 bytes each (192 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSColor with size 52 bytes each (312 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSColumn with size 48 bytes each (288 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSContent with size 24 bytes each (144 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 12 instances of nsCSSCornerSizes with size 64 bytes each (768 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 547 instances of nsCSSDeclaration with size 32 bytes each (17504 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSDisplay with size 188 bytes each (1128 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSFont with size 88 bytes each (528 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSList with size 56 bytes each (336 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSMargin with size 596 bytes each (3576 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 4 instances of nsCSSMediaRule with size 40 bytes each (160 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSPage with size 24 bytes each (144 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSPosition with size 96 bytes each (576 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 61 instances of nsCSSRect with size 32 bytes each (1952 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 581 instances of nsCSSRule with size 20 bytes each (11620 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 12 instances of nsCSSRuleProcessor with size 28 bytes each (336 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSSVG with size 252 bytes each (1512 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsCSSScanner with size 1008 bytes each (3024 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1636 instances of nsCSSSelector with size 40 bytes each (65440 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1166 instances of nsCSSSelectorList with size 12 bytes each (13992 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 22 instances of nsCSSStyleSheet with size 72 bytes each (1584 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 21 instances of nsCSSStyleSheetInner with size 80 bytes each (1680 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSTable with size 64 bytes each (384 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSText with size 100 bytes each (600 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSUserInterface with size 60 bytes each (360 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSValue::Array with size 12 bytes each (72 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsCSSValue::Image with size 36 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 152 instances of nsCSSValue::URL with size 24 bytes each (3648 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 275 instances of nsCSSValueList with size 12 bytes each (3300 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSValueListRect with size 16 bytes each (96 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 93 instances of nsCSSValuePair with size 16 bytes each (1488 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 12 instances of nsCSSValuePairList with size 20 bytes each (240 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsCSSXUL with size 56 bytes each (336 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 886 instances of nsCStringKey with size 20 bytes each (17720 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 5 instances of nsCategoryObserver with size 60 bytes each (300 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsCharsetAlias2 with size 28 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsCharsetConverterManager with size 20 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 8 instances of nsChildContentList with size 20 bytes each (160 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsCollationMacUC with size 36 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 18 instances of nsCommentNode with size 56 bytes each (1008 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsConsoleMessage with size 24 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsConsoleService with size 80 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsContentPolicy with size 36 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDNSService with size 48 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDOMClassInfo with size 20 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDOMDocumentType with size 104 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDOMEventGroup with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDOMStorageManager with size 52 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDOMThreadService with size 152 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDateTimeFormatMac with size 40 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDeque with size 52 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDocShell::InterfaceRequestorProxy with size 16 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsDocument with size 668 bytes each (9352 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsDownloadManager with size 64 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsEntropyCollector with size 1048 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsErrorService with size 132 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsEventListenerManager with size 96 bytes each (576 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsEventListenerThisTranslator with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsExceptionManager with size 24 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsExtensibleStringBundle with size 20 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsExternalHelperAppService with size 48 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of nsFastLoadFileWriter with size 232 bytes each (464 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsFastLoadService with size 80 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsFileOutputStream with size 28 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsFileStream with size 24 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsFocusManager with size 52 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsFrameList with size 8 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 19 instances of nsGenericDOMDataNode with size 52 bytes each (988 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 285 instances of nsGenericElement with size 48 bytes each (13680 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsGenericFactory with size 20 bytes each (60 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of nsGlobalChromeWindow with size 476 bytes each (952 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of nsGlobalWindow with size 468 bytes each (936 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsGlobalWindowObserver with size 16 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsHTMLCSSStyleSheet with size 24 bytes each (336 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsHTMLDNSPrefetch::nsDeferrals with size 4136 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsHTMLDNSPrefetch::nsListener with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsHTMLInputElement with size 136 bytes each (408 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsHTMLSpanElement with size 52 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsHTMLStyleSheet with size 76 bytes each (1064 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsHTMLStyleSheet::GenericTableRule with size 12 bytes each (168 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsHTMLTextAreaElement with size 88 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1256 instances of nsHashKey with size 8 bytes each (10048 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 15 instances of nsHashPropertyBag with size 48 bytes each (720 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 250 instances of nsHashtable with size 44 bytes each (11000 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 581 instances of nsHtml5AttributeName with size 16 bytes each (9296 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 391 instances of nsHtml5ElementName with size 28 bytes each (10948 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsHtml5HtmlAttributes with size 24 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsIDNService with size 64 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsIOService with size 124 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsIdleServiceDaily with size 20 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsIdleServiceX with size 32 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsImageFrame::IconLoad with size 36 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsIsOfflineSQLFunction with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsJAR with size 1172 bytes each (3516 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsJARChannel with size 188 bytes each (2632 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsJARInputStream with size 120 bytes each (1680 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsJARInputThunk with size 56 bytes each (784 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsJARProtocolHandler with size 28 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsJARURI with size 44 bytes each (616 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsJISx4051LineBreaker with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 13 instances of nsJSContext with size 64 bytes each (832 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of nsJSEventListener with size 32 bytes each (64 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 41 instances of nsJSID with size 36 bytes each (1476 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsLanguageAtomService with size 56 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsLayoutStatics with size 1 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsLayoutStylesheetCache with size 36 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsLoadGroup with size 8 bytes each (24 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 38 instances of nsLocalFile with size 1048 bytes each (39824 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 7 instances of nsMediaList with size 24 bytes each (168 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsMetaCharsetObserver with size 40 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsNativeThemeCocoa with size 40 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsNavBookmarks with size 224 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsNavHistory with size 508 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsNetworkLinkService with size 28 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 187 instances of nsNodeInfo with size 32 bytes each (5984 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 16 instances of nsNodeInfoManager with size 40 bytes each (640 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 18 instances of nsNullPrincipal with size 36 bytes each (648 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 18 instances of nsNullPrincipalURI with size 36 bytes each (648 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsObserverEntry with size 468 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsObserverService with size 48 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsOnloadBlocker with size 12 bytes each (168 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsParserService with size 68 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 24 instances of nsPersistentProperties with size 80 bytes each (1920 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 5 instances of nsPrefBranch with size 52 bytes each (260 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3162 instances of nsPrefOldCallback with size 32 bytes each (101184 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsPrefService with size 36 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 122 instances of nsPrincipal with size 76 bytes each (9272 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsPrivateBrowsingObserver with size 24 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsProperties with size 8 bytes each (24 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 416 instances of nsPseudoClassList with size 16 bytes each (6656 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsRDFResource with size 28 bytes each (84 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsRadioVisitor with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsRangeUtils with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsRect with size 16 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsRepeatService with size 24 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsReverseStringSQLFunction with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsSameOriginChecker with size 16 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsSampleWordBreaker with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 87 instances of nsScriptError with size 72 bytes each (6264 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsScriptLoader with size 48 bytes each (672 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsScriptLoaderObserverProxy with size 16 bytes each (224 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsScriptNameSpaceManager with size 40 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsScriptSecurityManager with size 92 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 4 instances of nsSimpleURI with size 8 bytes each (32 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsSocketTransportService with size 1684 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 512 instances of nsStandardURL with size 184 bytes each (94208 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 4 instances of nsStaticCaseInsensitiveNameTable with size 48 bytes each (192 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6002 instances of nsStringBuffer with size 8 bytes each (48016 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 23 instances of nsStringBundle with size 40 bytes each (920 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsStringBundleService with size 112 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsSupportsArray with size 56 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsSupportsCStringImpl with size 24 bytes each (72 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsSystemPrincipal with size 36 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1462 instances of nsTArray_base with size 4 bytes each (5848 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 19 instances of nsTextFragment with size 8 bytes each (152 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsThread with size 72 bytes each (216 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 5 instances of nsTimerImpl with size 60 bytes each (300 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 112 instances of nsURIHashKey with size 8 bytes each (896 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsUnicodeNormalizer with size 12 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 9 instances of nsVariant with size 48 bytes each (432 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 265 instances of nsVoidArray with size 4 bytes each (1060 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 24 instances of nsWeakReference with size 16 bytes each (384 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 12 instances of nsXBLDocGlobalObject with size 28 bytes each (336 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsXBLDocumentInfo with size 44 bytes each (616 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 22 instances of nsXBLEventHandler with size 16 bytes each (352 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 31 instances of nsXBLInsertionPointEntry with size 20 bytes each (620 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 7 instances of nsXBLKeyEventHandler with size 24 bytes each (168 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsXBLParameter with size 8 bytes each (112 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 39 instances of nsXBLProtoImpl with size 32 bytes each (1248 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 31 instances of nsXBLProtoImplField with size 24 bytes each (744 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 90 instances of nsXBLProtoImplMethod with size 20 bytes each (1800 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 125 instances of nsXBLProtoImplProperty with size 28 bytes each (3500 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 74 instances of nsXBLPrototypeBinding with size 60 bytes each (4440 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsXBLPrototypeResources with size 12 bytes each (168 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of nsXBLResource with size 20 bytes each (40 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsXBLResourceLoader with size 36 bytes each (504 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXBLService with size 56 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 72 instances of nsXBLTextWithLineNumber with size 8 bytes each (576 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 24 instances of nsXBLUncompiledMethod with size 16 bytes each (384 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 14 instances of nsXMLDocument with size 672 bytes each (9408 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 133 instances of nsXMLElement with size 52 bytes each (6916 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 47 instances of nsXPCComponents with size 60 bytes each (2820 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 44 instances of nsXPCComponents_Classes with size 20 bytes each (880 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXPCComponents_Constructor with size 20 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 42 instances of nsXPCComponents_ID with size 20 bytes each (840 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 44 instances of nsXPCComponents_Interfaces with size 28 bytes each (1232 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 29 instances of nsXPCComponents_Results with size 20 bytes each (580 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 37 instances of nsXPCComponents_Utils with size 24 bytes each (888 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 2 instances of nsXPCComponents_utils_Sandbox with size 16 bytes each (32 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXPCWrappedJS with size 60 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXPCWrappedJSClass with size 44 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXPConnect with size 104 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXTFService with size 44 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 147 instances of nsXULElement with size 60 bytes each (8820 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXULFastLoadFileIO with size 28 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXULPopupManager with size 68 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 391 instances of nsXULPrototypeAttribute with size 12 bytes each (4692 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsXULPrototypeCache with size 176 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 147 instances of nsXULPrototypeElement with size 32 bytes each (4704 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 3 instances of nsZipArchive with size 1060 bytes each (3180 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 6 instances of nsZipHandle with size 16 bytes each (96 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of nsZipReaderCache with size 76 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of xpcPerThreadData with size 48 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of xptiFile with size 32 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 57 instances of xptiInterfaceInfo with size 20 bytes each (1140 bytes total) +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of xptiInterfaceInfoManager with size 100 bytes +TEST-UNEXPECTED-FAIL | automationutils.processLeakLog() | leaked 1 instance of xptiWorkingSet with size 52 bytes diff --git a/topfails/__init__.py b/topfails/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/topfails/images/img5846075.png b/topfails/images/img5846075.png new file mode 100755 index 0000000000000000000000000000000000000000..46f50cc660f09d320519e54f57d510df4361806c GIT binary patch literal 15027 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 JPDHLkV1gn#OzHpt literal 0 HcmV?d00001 diff --git a/topfails/images/nav12971480a.gif b/topfails/images/nav12971480a.gif new file mode 100755 index 0000000000000000000000000000000000000000..1954c8a13f9a2afc79c0cccb296f1d42fb49d5e5 GIT binary patch literal 3265 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 S_zuAjI4EKbtwdF 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 literal 0 HcmV?d00001 diff --git a/topfails/images/nav12971481i.gif b/topfails/images/nav12971481i.gif new file mode 100755 index 0000000000000000000000000000000000000000..a405a2fc2cad0ccd99adbd60fb1de1f84b5a2e30 GIT binary patch literal 2970 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 literal 0 HcmV?d00001 diff --git a/topfails/images/nav12971482a.gif b/topfails/images/nav12971482a.gif new file mode 100755 index 0000000000000000000000000000000000000000..4b4fb9ab2b71c11cc009791136612331303dcba6 GIT binary patch literal 3278 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 literal 0 HcmV?d00001 diff --git a/topfails/images/nav12971482i.gif b/topfails/images/nav12971482i.gif new file mode 100755 index 0000000000000000000000000000000000000000..dfefd817c8d522450d5834246823827c98b62756 GIT binary patch literal 2977 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 literal 0 HcmV?d00001 diff --git a/topfails/images/nav12971483i.gif b/topfails/images/nav12971483i.gif new file mode 100755 index 0000000000000000000000000000000000000000..9d8e15f10e2334bd36f85b789960341b944ed73b GIT binary patch literal 3043 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 literal 0 HcmV?d00001 diff --git a/topfails/images/nav12971484i.gif b/topfails/images/nav12971484i.gif new file mode 100755 index 0000000000000000000000000000000000000000..e95f4fc2ab52c2c7586765b7336321adeefa9cf5 GIT binary patch literal 2769 zcmeH`=~t7762{*wgaizWPzfNChy_8GAd9#*ST+F>fs0tMvJ^yaP&NVCd|5;`0dI%} zq&3KvmVGsploNKtmY@)}paG=P@ET)y1+}qU`e)p8?sMkD%!irtduGl!pL4Q17SsXk z2ett~{KpVOR#iTXOl99FoD)f@%0OEZ>6R&+_T#)35}F zWDq2QVF?6+;Nb8e4FuV}Y!IZ;cWaOdg0%tP1%M#^^~!6O5c2W$k;~xMf4qjqYR5;% zVG)}rg9rQBED;O|S@1u>2J5)oIuNYk?l!Z3V^=?^hD2<32?&odv$C^TLYOUtc|vwv zd>m^Y;?A?UyQuT5#iuk#!efp>wPO%_6_&5|&1}ixRW>YQab+-D1i`XJde1Uf#9~fD z4o(jA?q#k7UhJmPx)-Z!tGP8G^sJUEWbq_0HG&EW*=!-i+np>~hQ^pFX({YoLJK!ZEoppDE|>X7#)+_#eCf*Z=YcOo3hf^9ulW2XG@0Tv{0R$_naxeV*}w zymTeJYgRbttV5oLRm6B=bnwW1qN;DhNA*hX10(Ok5&{Z|0mvbv73bP(Cmz|wiiOsRk-jYuG|;VX3VQB5 z^{BYjxW01#e!J6HQhcOBNBc>?MM`?C1o63dr|AnPIb6`8QGDV1`K09e$yXYNr-)!C z8X=y2b$%`$T5Zs--5>aO-zB}o*Xr2ENX5WQiz(n~LQodn(uHyN11=E2e8Drod#FPq zAZL4NmXeBR{>aJQ$~}BASGAz@YMvsa^f5|xeS5i(C|j?}+tzD&LRI45yIMp#LCgS9 zqV*pNJe&Td4|Wfga)8gb?$uCLtodtzqP3Kg@Ubh2FkmeVhW3=zwI&d7BwDyyMZPJ^n!iB@N#k61Vt<@CS8iT2ojed0x zGn9%!Z0QLiKtn#mh85wbv0;Tqy*r=Q>E_vl6}nQ#Z6}5BYEtm+$o_Hwp&OheZhdz2 zIOi8@8!)16#5~`mc3K7Gv^_st|F*p@IKQTC&M+Tn%NZ5CEJju2tmV8i&lTqgGkPfO z7e}vWU=Hjdaen{gk#B|!^J(eBEr%tWAh4lF(gEdy9w{5`;7>y$?Z(N-&4Xn7A*3l} zIYO{XdCxxhqfpw4uM2oTte#-XLF@FKlCZTcqKsLuZq#qKk}N137Rob9)~_=%-mh?= znv#yw`eFB4>R3wOFPj3Q6ldnVXLDFnlYH%|m)m(++=D*NOs%7Mij3v0e8rN>@1JO$ zT$NQo{pN0>=x4VKb{3z`-MpX|JxI`+d_R(XFU16T@l8Mi+9)CACgv&@$i`?_6Db6; zkLb3Vat=vK(4kVY--K5D)-sFXm;#8F0SV}FG|=*_d$WZn1wwmLIOtwy{z<92r>9)h zugpt^G~_DDo9ILOse|f1H@|E&Umzk7XRO9kmvuKAWs`xtjlX0Q7x-+RvM1xT^fD2T zL^vli6x7Jn76mP9A2kQ9uS66Tb58_G)C|7Rwa0lffOfG}xMt(1he4C*2ZKaB`sQ1+;4+S(_ z@n+{JkfHA*QfRSSQFc+I90&kWmkxum@hPlOE|G^NrZ9TL0EePB_bnvUJ!-M;L zNT6?Guqu}9ct|2aA>W4#CO*kj^HBquV?{D2W7mt42PGK+L3)VG&Swf^O86Tg`kkzd z+6mPh?Kyi*rr%k^7*6i~^>oc6#Jgsbxe1!ZAkREgL)UJZ22d#PQkbVD_?zWt9{p@f zS3LRW_1JPg>gADW408|OfL$U^s_Bg)cs`5KB-27MYS$9Fh*N@dzH z&+ifY5-qcF@BD=7AkrNLXva|u6+=q-VTLUFEz^kUeA2Yk)=q0!Ekr$M-r>S<=Yz{7 z(UymV8_&32r)4VD2d_|Ex(&T??u|iKoQmf$;`BrA6xdUj;XGh#p$SOl^cI zxcT-K(9K4j#;(TZF9g0Y@kX0|sGrj)>-0@-6tu;6&Uoq0O>cdN+wmL2)|^altF_4p zCjI&CC(G%Q#OhMRWhIBLXijRLW)-4Xe5P;cKSgm4kL7+^4hO^@30cz&NiWl73)dWd zU!iegva9vE4J|2l=;ep<>&{`a;k4Z_9#llr?REQ;L?!NH~K2E;e!F8#*eyf!~gaun=Sam*7Zrm;Vu{HMV?TGb)6Yjz6BZYyCbzn}-$usV=@Bl! U-0GZ~klb+d7w#cbC;)KszXY9fMF0Q* literal 0 HcmV?d00001 diff --git a/topfails/manage.py b/topfails/manage.py new file mode 100755 index 0000000..bcdd55e --- /dev/null +++ b/topfails/manage.py @@ -0,0 +1,11 @@ +#!/usr/bin/python +from django.core.management import execute_manager +try: + import settings # Assumed to be in the same directory. +except ImportError: + import sys + sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__) + sys.exit(1) + +if __name__ == "__main__": + execute_manager(settings) diff --git a/topfails/settings.py b/topfails/settings.py new file mode 100644 index 0000000..0e0f594 --- /dev/null +++ b/topfails/settings.py @@ -0,0 +1,86 @@ +# Django settings for topfails project. +import os + +DEBUG = True +TEMPLATE_DEBUG = DEBUG + +DBUSER = DBPASSWD = '' +if os.environ.has_key('dbuser'): + DBUSER=os.environ.get('dbuser') + #print DBUSER +if os.environ.has_key('dbpasswd'): + DBPASSWD=os.environ.get('dbpasswd') + #print DBPASSWD +ADMINS = ( + ('Murali Nandigama', 'murali.nandigama@gmail.com'), +) + +MANAGERS = ADMINS + +DATABASE_ENGINE = 'mysql' # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. +DATABASE_NAME = 'topfails' # Or path to database file if using sqlite3. +DATABASE_USER = DBUSER # Not used with sqlite3. +DATABASE_PASSWORD = DBPASSWD # Not used with sqlite3. +DATABASE_HOST = '' # Set to empty string for localhost. Not used with sqlite3. +DATABASE_PORT = '' # Set to empty string for default. Not used with sqlite3. + +# Local time zone for this installation. Choices can be found here: +# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name +# although not all choices may be available on all operating systems. +# If running in a Windows environment this must be set to the same as your +# system time zone. +TIME_ZONE = 'America/Chicago' + +# Language code for this installation. All choices can be found here: +# http://www.i18nguy.com/unicode/language-identifiers.html +LANGUAGE_CODE = 'en-us' + +SITE_ID = 1 + +# If you set this to False, Django will make some optimizations so as not +# to load the internationalization machinery. +USE_I18N = True + +# Absolute path to the directory that holds media. +# Example: "/home/media/media.lawrence.com/" +MEDIA_ROOT = '' + +# URL that handles the media served from MEDIA_ROOT. Make sure to use a +# trailing slash if there is a path component (optional in other cases). +# Examples: "http://media.lawrence.com", "http://example.com/media/" +MEDIA_URL = '' + +# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a +# trailing slash. +# Examples: "http://foo.com/media/", "/media/". +ADMIN_MEDIA_PREFIX = '/media/' + +# Make this unique, and don't share it with anybody. +SECRET_KEY = '^_5(02(8sng5+6+x=c$w+3(4xv+x^&b)2ty4y8m01(o7vz$o5_' + +# List of callables that know how to import templates from various sources. +TEMPLATE_LOADERS = ( + 'django.template.loaders.filesystem.load_template_source', + 'django.template.loaders.app_directories.load_template_source', +# 'django.template.loaders.eggs.load_template_source', +) + +MIDDLEWARE_CLASSES = ( + 'django.middleware.common.CommonMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', +) + +ROOT_URLCONF = 'topfails.urls' + +TEMPLATE_DIRS = ( + './templates/' +) + +INSTALLED_APPS = ( + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.sites', + 'topfails.viewer' +) diff --git a/topfails/templates/base.html b/topfails/templates/base.html new file mode 100755 index 0000000..9494f49 --- /dev/null +++ b/topfails/templates/base.html @@ -0,0 +1,121 @@ + + + +Topfails + + + + + + + + +

+ + + + + + + + + +
+ Firefox Logo +
+ +
+
+
Mozilla Tinderbox Topfails Dashboard
+
+ + + + + + +
+{% block content %} +{% endblock %} +
+ + diff --git a/topfails/templates/viewer/Help.html b/topfails/templates/viewer/Help.html new file mode 100755 index 0000000..75693b5 --- /dev/null +++ b/topfails/templates/viewer/Help.html @@ -0,0 +1,21 @@ +{% extends "base.html" %} +{% block content %} +
This web site provides the bird eye view of top failures and other details of Firefox unit tests  from the  Tinderbox daily runs.
+

+
Meaning of the Left navigation links
+
    +
  • Latest Failures : This link provides the list of latest failures from the Tinderbox.
  • +
  • Top 25 Failures : This link provides the list of top 25 failures from the entire history of the topfails database. Please note that this data is as complete as the first date we started collecting results. The data we have in the topfails database does not contain all the failures details from the Time ZERO of tinderbox runs.
  • +
  • All Failed Tests: This link displays all the known failures that are stored in the topfails DB.
  • +
  • Failures from X days: This is a link which allows you to query for failures from NOW till a specific period in the past.
  • +
+
      Example: 2d  =   2 days  in the past till  now
+
                          7h  =   7 hours in the past till now
+
                          5w =  5 weeks in the past till now
+
                          1m =  1 month in the past till now
+
                         10y =  10 years in the past till now
+
Example queries for advanced users 2 weeks 'Firefox' failures
+
Example queries for advanced users 2 days 'Firefox' failures
+
Example queries for advanced users 24 hours 'Firefox' failures
+
Example queries for advanced users 1 month 'Firefox' failures
+{% endblock %} diff --git a/topfails/templates/viewer/README b/topfails/templates/viewer/README new file mode 100644 index 0000000..1e69967 --- /dev/null +++ b/topfails/templates/viewer/README @@ -0,0 +1,5 @@ +I have done a very bad and crude hack to add a top level navigation page. Instead of storing images for top navigation page in the correct location , I am jammin gall the top site nav stuff in here. + +Should fix it when time permits. + + diff --git a/topfails/templates/viewer/changeset.html b/topfails/templates/viewer/changeset.html new file mode 100755 index 0000000..ca8c307 --- /dev/null +++ b/topfails/templates/viewer/changeset.html @@ -0,0 +1,9 @@ +{% extends "base.html" %} +{% block content %} +

Changeset {{ changeset }}

+
    +{% for build in builds %} +
  • {{ build.tree }}: {{ build.get_os_display }}: {{ build.get_status_display }}
  • +{% endfor %} +
+{% endblock %} diff --git a/topfails/templates/viewer/changesets.html b/topfails/templates/viewer/changesets.html new file mode 100755 index 0000000..f2208fa --- /dev/null +++ b/topfails/templates/viewer/changesets.html @@ -0,0 +1,9 @@ +{% extends "base.html" %} +{% block content %} +

Changesets

+
    +{% for c in changesets %} +
  • {{ c }}
  • +{% endfor %} +
+{% endblock %} diff --git a/topfails/templates/viewer/failswindow.html b/topfails/templates/viewer/failswindow.html new file mode 100644 index 0000000..cf534b5 --- /dev/null +++ b/topfails/templates/viewer/failswindow.html @@ -0,0 +1,10 @@ +{% extends "base.html" %} +{% block content %} +

Failed tests from last {{n}} {{d}} up to now

+ + +{% for f in failures %} + +{% endfor %} +
CountTest name
{{ f.count }}{{ f.test__name }}
+{% endblock %} diff --git a/topfails/templates/viewer/index.html b/topfails/templates/viewer/index.html new file mode 100755 index 0000000..ff2fdd9 --- /dev/null +++ b/topfails/templates/viewer/index.html @@ -0,0 +1,15 @@ +{% extends "base.html" %} +{% block content %} + +

Most recent test failures

+
    +{% for f in failures %} +
  • {{ f.build.startdate|date:"Y-m-d H:i" }} {{ f.build.tree.name }} {{ f.build.get_os_display }}: {{ f.name }}, + timeline + - {{ f.description }}
  • +{% endfor %} +
+{% endblock %} diff --git a/topfails/templates/viewer/latest.html b/topfails/templates/viewer/latest.html new file mode 100755 index 0000000..55fd43e --- /dev/null +++ b/topfails/templates/viewer/latest.html @@ -0,0 +1,15 @@ +{% extends "base.html" %} +{% block content %} + +

Most recent test failures

+
    +{% for f in failures %} +
  • {{ f.build.startdate|date:"Y-m-d H:i" }} {{ f.build.tree.name }} {{ f.build.get_os_display }}: {{ f.test.name }} + + - {{ f.failtext }}
  • +{% endfor %} +
+{% endblock %} diff --git a/topfails/templates/viewer/test.html b/topfails/templates/viewer/test.html new file mode 100755 index 0000000..3c5b260 --- /dev/null +++ b/topfails/templates/viewer/test.html @@ -0,0 +1,13 @@ +{% extends "base.html" %} +{% block content %} +

Logfile links and Changeset links for {{ test }} failures

+[ Showing up to latest 10000 failures' related log links ]
+
+
    +
    • +{% for f in failures %}{% ifchanged f.build.id %}
  • +{{ f.build.startdate|date:"Y-m-d H:i" }} {{ f.build.tree }} {{ f.build.get_os_display }}   [{{ f.build.changesetlink|safe }}] +
      {% endifchanged %} + {% endfor %} +
    +{% endblock %} diff --git a/topfails/templates/viewer/test.html.orig b/topfails/templates/viewer/test.html.orig new file mode 100755 index 0000000..2670eb3 --- /dev/null +++ b/topfails/templates/viewer/test.html.orig @@ -0,0 +1,27 @@ +{% extends "base.html" %} +{% block content %} +

    Logfile links and Changeset links for {{ test }} failures

    +
      +
      • +{% for f in section %}{% ifchanged f.build.id %}
    • +{{ f.build.startdate|date:"Y-m-d H:i" }} {{ f.build.tree }} {{ f.build.get_os_display }} [{{ f.build.changesetlink|safe }}]: +
        {% endifchanged %} + {% endfor %} +
      +{% endblock %} + + \ No newline at end of file diff --git a/topfails/templates/viewer/tests.html b/topfails/templates/viewer/tests.html new file mode 100755 index 0000000..bc2274a --- /dev/null +++ b/topfails/templates/viewer/tests.html @@ -0,0 +1,14 @@ +{% extends "base.html" %} +{% block content %} + + +

      All known failing tests

      +
        +{% for t in tests %} +
      • {{ t }}
      • +{% endfor %} +
      +{% endblock %} diff --git a/topfails/templates/viewer/timeline.html b/topfails/templates/viewer/timeline.html new file mode 100755 index 0000000..8363867 --- /dev/null +++ b/topfails/templates/viewer/timeline.html @@ -0,0 +1,72 @@ + + +Timeline for {{ test }} + + + + + + + +

      Timeline for {{ test }}

      + +
      +
      
      +
      +
      + +
      + + + + + + +
      +{% for desc in descriptions %} +
      {{desc}}
      +{% endfor %} +
      +
      +
      +
      +
      + diff --git a/topfails/templates/viewer/topfails.html b/topfails/templates/viewer/topfails.html new file mode 100755 index 0000000..6ae619d --- /dev/null +++ b/topfails/templates/viewer/topfails.html @@ -0,0 +1,10 @@ +{% extends "base.html" %} +{% block content %} +

      Top 25 failing tests

      + + +{% for f in failures %} + +{% endfor %} +
      CountTest name
      {{ f.count }}{{ f.test__name}}
      +{% endblock %} diff --git a/topfails/templates/viewer/topfails.rar b/topfails/templates/viewer/topfails.rar new file mode 100755 index 0000000000000000000000000000000000000000..52c1cfb5ab2dfcb6883ade6b551aaad28debcaf2 GIT binary patch literal 280990 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
        FDX^Z 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괊*s9&c(%1rban+ zvd(r<;NawqIcm!K5(kxsy8{TFzH@}X5-OJ20IBs}yeDhK)~%dPmYlqSnaMDw9aUYs zYh?2;2cNV077gtM%nR`>K`7g&7h0Fci~2`cnB8sUQNXrS&COShgDbRuWULJAS}T@jB@HHuA5B{FA%X3>*Oe9*5+DBmvB&{ z1KqAN)&zMMSE5wJB=LkTZfblnvi_DvBj$oMx<6t>Ai%*l##}*2&|)V7wD3|fAZ|0D zDR7%F>a0oYuzNU-wO6sYeLpJnh@08~h)83Sopy68&Ox#@UZO{Fvu|JQ8zg#(WfJVi zRBfr3dll!!gm;1@G>BI!pw4*GAEywIKqRqtz~C{vD}43E)XPNrb*+qSdZtmm?;?&I zSi(glLuJnkGS?bud=YgvH2UyM))WtW0c34)yFdytV#N4hmG&kx12mTa>OO?~=~`(G z6UgRFG_>)Ob~Wm@)xC{kDYopA7`1M~FTUsn{@6@i7d)hGy#rdH>S@w z*DVe8l@%_mGq74YRjGWiVM89YvDDm0i+Ncp=Jqif2PcL**q19kLIb?Dldf&RoB|in zBTVH*qHJpdCadCvEl(PONL-mz*0{|~jOQ0DaJdgq9V{6I|3;%Ggxr`a@(w`_z>CEc zszSuHNDylgx@{k}A?TdiRc^AsJ@7~)FQw8P|{$u^`q}?+GwSbm(1}*Wn^Dr z4#T-?ojI|!oF|NiVGQI*fsgzN-q!+>D^5yYG0wXRB7@8)b8b#rLy^Tq*npsl+~t+8 z@9N&H8#2TcFtG3NJ|hn{Wc7;HZ&vGl|65oWDik4BLW8`DXr}4MMSNh|fz7A#^lYUL zHnj_TWQGnA&$nGN9U8T!%>^YFd*gwR<%-i9B*&z-@apOMQs9{MRO(JIyl8WQ5=kVv zX2`Ifhh3HE?!YG<-TiMg^L0+ymoS=6*P=Ew$c~YXFP^pY2wznq;g2si%Dads;M{rF z%pRE=?yHq7u3c`zMYACL+#l&^q@=lv!d#ki6J%pHCtkQvdFqB*(;e}&^BFrFcpRwh z;@k8Ze2rpT3n_ITDs;^GTTa{TLzszz9TBb}q5fB|&!<{BUNUA7% z#n53`SLY|#vOztBv5UsDY_@qvpTp0;r?lroM{{>>0Q`SDn_usnyG&W#d@aE8E3guB z)cyuz$8?Qm3sgU|WN&`>^ufbQwQVLJy~OG4uh4jKpjv(U9sm&jzsshY7DChYXb z(&Q@6jxKN8rnGj$?-c!t2CtZxUr^~_vD?g8JEaE(*+g4FrbIyoYc7{t@dyymiL6d5JH4)4KoAobZ(Oty~3tV}2~ z^$1U&!oE(gEO=^%i|W#En-)OSYF~}WLn)#D%s{+>iqqv5J$Ek=R%@3=r|Js;*!ns3 zbN;XH=lab9`Z77Bd&H>SB5M(Sm?4 z2sR(7Bsz=Dd4K)jkld@ptB3Mc)N7JRP0Z`cpC{QLbIWPLHq^I(w#)+!!xKHlx; zi-cAeU2|m5(vXjRqjoz{4--l{D9jl|M(75{1{K9-X z5yGL+lx^A%NCB;(_vcP&j0D$Hp<|CE{VzneK zZhRsxKs^8xN;mpTvs&Ek6fy@YJfkO?YWCks>#P}nU;RX&-4>g*FQb^qVnlmDBHV90 z{smx9i5ZT^1FZ6Cy$~?aqmXfFz58nvM=8eZpJFzgy}NQkSGh0vVzBL!>wE=iQ^1^f~y={pbJ!~&93rGj@<%lC;h;}++h-j=4- zut_72;$>ZjPARBJqpc1Q3072AsA=ZLo>5JsXY#JW1~72vjcf>#{ZIiLKenvJjgC=? zbXP>k0zgQOi4OTtamIkz9a!>6Ln6t46;>bG#di*!)cTo8A7iVdIL0uTN>Ph+a*x+o zzjNf<0S%k|T*e^uWM+K*NEeUiZBZ47){nD9Z-)xe&>6Jn8YLusW&{Y;ISpC!Q`1G% zwmAFA5sH5d?VJ~T`XWtKJtv6KCjVnL3q;ZNJ3DuM!#dQXLQ1cDVZBnMN^?ssi zPR8&|VT&I!wP*^7xNI_>&(vWViIV(ks?FWHY!O>gqDDJZ8+(tk@vTmF0jkjPMw_6& zB1uT0ek+S2uj{8tkup=fP>J5nR>wCDPfn9qeNz>uY#JgGCim&x<~Rpj<)h6caWZ(l z9`AUaurU1K5lz!+2;b$Q^!fy|n>Px@PHeyWC#|`svUi%F%X!VMaTCoYzwUDM`rjkl zd8{hXB0X1%J-5OiKQ~-7S4ZJedmMnzJ^-;0`FvGuYKye)_Kuwtj4utaEPR?oJT&xX@sMhN=omPdUH>v<_~& zbz_p#fM8hV;N8WOWdHE(Q+M?jq{qT{av=W_dIB1p3{;3~6!Cl}i9%|LN_tpkkb4VW z;omw9r351Il#}#R+QHK7+|dE5=ymreZ??Gz$Q#S zGs!i$rBeZU-N#HwNqLW6fitymG&tkp^IP1s`W}Os8eW>zqm6?T{|DA+4TlSjHu_?R zun{Bm&H<`K&#1gTrHp^k?pD+_Ei@51VtCF9+hbI`9Ur;hhmtWYp3MUw!EV6oEz_?}SKcvV=&lQlkWZ$Kwwa4nIbh?I)1cKXhVmUyj3Kf0R~w zDEfkA`RwD#?#e`xIc=Z*B#c0>xFmryhO57l7&$Rc`YT7${Pfn0jvYmtu40I#&7XBs z&XTkOn&r4^lCmzj(<0YcA&^gG##a=V0@OXgD+l60VUDxy2|V0S1>ermUe|%TnBbjJ zg!VfmvqfORH_csV>@JptBcd4k(i5lmRckOB(llR*R1*!A^Lck9`l&mFw8l4d$+gE; zph}d^O7zaPjDIxkav~~qR7lWf=3X5q+H91bjz6I3T{&b+tE!Xh2U}dCSUX3>wOpd# z58?@Ll7Eeb?EB^^bC)bxg0aH0X;DkI$yP7i31j@QG{r`+ADP}iIxo=`<&hOF*h4Sh zV}tZmBIeCk_AU(|Y2n zZ#yWSL#9m+r4JYLJQDGoB&Xl#l#Y07cUzLL`88V1?hHqSFWW??+87rV#IA3=c~1*2 z7ljpcWm;-l_L1NZZ5+Fqt~|zC;R|gnmeHKI)ckcL+`L!OuC<~4jq56Mt6Ch_etEt< zK|JKmJQ5W9$HrscCy#fYrAlQrWocJcmJ02|Nl17TmPQ5+ZUq4_Onfwal-IBR4G!O6tnfOcWcJFWkbI|1WU0x`-T%}VuGhSu}{qX zfwo&CM`X9yitUTZ-G;4}qvJZW9i23ulEyoO2zGMH;T;6|wf3h2nNT(5F}x+)#$K~G zN+QjDZu$5CufQlHIQfXZjY5rM(@$HGOcruG^GgxAc1Kz5?bc0*&q)X>eg#Hzr3d%D zUlV=OD9Q_>6cFl8?WLzE%8r&9;MFtI6B|Yniw+qCPiBUUsjo~wz}q8x{VG15*>)FT z*XJ+>^}hlP6%+sf9Q;>+#caanhs#9$e`caG)3Y!#GyHERYVC}t03tjP@@UKy;Ko8s zsF*{nX{czwT^vH6!WsgtNnvg{+Xhsca=HC*t7Z~J(;#A~YphCH|BxV2e`0_#Qc{pa ztVPl-LZN7+Xpj=TAG}!UFnMh9_(aZWHMIXui1sVkvCUo&&eqh_EBNy#t38us0e4>F z2FNoKzQ67TrvD&x?;>dnz=@wPz27phwyS2WA|O4cVRJ(nS`2NjF>=(SM|0){ax9_GnEUutC6un(@X+<#zB1v$Soz{M*udOueB17ob9))B#HKpAu3=i)SZdf+!0>lh{v)c;3^p6QI9Fs z*xLFbJO0o`%`R{~7){9LsBXX{w3I9u09J_mW=4mPcuX75(mE?u**U`)Owo0ISxjSH z&kt@)%;Z=s1fjkO(4+1%y|6~$zVhwk->AieUl*4pb4sfh+L^na;P?^d(pm@eK-GWW z>mvDdsBk`)$$g6|7H&HwXgSj0B%d;7Ztxmj4~N{xnDf9Q3MTmyVZFV%cGO0zn?X}a zx+-OGP*BlCJCzs9pBvMVSI6e1WLkrFXr^cP{HauwvdS}uD_d*%+77bC4Yk)ACRr^9 zF$$4Yf@d?W#w@g;FjA?3ai6G|M?3lLv0v594^}0(3=TwI7 zGzTB|`y3D+-0QGXp>gFZrR$rKe8ff%ym&M%D^xoI;*M>WtJsI8N*VZmTpxqfj0gzd zDv_x)EqNCA3dEH1 zmKW?eUiJJF@?MNLSt`W$n@BAWLV?I{NRnVY3SjD7ewo0*GgC}8tRC!9qDo(_+Gus3 zf_^b5z`pj=2p;w05>Xu`xZft;1=h(SD3PsxJ3(o~Al*w1JMo0!>Zhog( z{8UK>x>qIesXg55lro~fEES91L_5YE(73R%AgN%Ls<#9S@%+Ots7$FqQkBIS7s(fh z89)JOD+ewaBYTacimLawB$mg%3oIK~jqnOjjw(v69an`eXPqxjoJ^80io+o|{#|P_ z7bJ(dRporuL>r^4IeuW3zjrnznJh`S$K}}e@+ouM;tzcy zTY1TJ(F$nqV_Elu#1;^uTSMUY~1`Gzk##@&N+%`A~*}9SJi}Fdt85 zK!`~!b2f9FI$c}CcDka;G2^b#Q;9&WzIg^41sUTdAG6hv`3Yn!DE~*U$?(5uh51D* z(0|YhPoPTje?;s5^tQE8yZneK8t9`@pRqVUU(c5Kkoig?)PT~I5bVnMDs2$p0|LoI zR%H^o%$mV0<*b-z#W99J;ifj_(Hy36@VP-?Lda-XHpRjD=}4$avk?4o^Mw7Fh5@Kr zKl-u}$T9odCTWv5ZjUbaa73hk@2JL{)IKBM84pSzFFOoRsn7*$AI=HRs z8oU_cftf+da&Gnk3gS3$Y+K}fYShKn;)7mwxFZnY15%E;YIOtS%}5OYvL9UEz% zF2u|x?0xeRXs&KBr>k_S>cm1KuQ&noid#$GSr^Hjqq7mx@9#TGU^obcH7AGA!W&MM zw3fw6&u7joC_Oq~iXQ_JMr-K!Q{6JL`6VZDHd;&!XsDDovus{$dA!hTt4tym@}hac zIULI&J11oYYDQLz78iy!djEM_(*|e5pWF`>1UW9iXHk9ft-Z&QUtuup>e=9&K8cv^RZdOe*om1$?92g`VmV|3* zLDck|h z@ix{^sF%Jf8-wYFnpFF}MoFe2c~g2=xw!OU!5tCp*?ugmBzvTVS< z922*+ywDa=RxDLYL>HEyyA=i7%F2cvs7LRLZn|>2%e1l!$DL#5xme@N;tppEYW}aw zo^IbqLcee4@%nEx$Be^qBt0QBKrO;nA2FJ^G08WYW~mi%OAR&%0=fUmC=E=)lwGLv z3*A7fkMfIy3)DZd-6w@;^Eo_JS4XUcb$Kw$py1M>YfB5R))q!?)}|CqO?GzYUbDt` zn1jiueTjy*jJ&xDdNr-GHnW%K}{%)7ixOad+$ zftNEgO1qjKv&LBIm~dUbrQ!FUsXMFWFK$V1FNdWE8_Bzrz{k!c56cKb?=zkcW#@;qrki07FYUu}L_!+ygHBYH*lOk*pauR&&ZY^ZHl@H>$i zNaw~8TeV?50bY9+Ycc;z)MF3;fNii}q7qQ%HvHd+`oBp*wf8}yFj|0%zhc!F?Z?B+ z#!R3QK>{`L9Lhh4h17lpizb)+Pi6+Of^jJa+ghA~7Jgqk-5EwMXxjEqyB^tg4WJbwzg6XbrF8l z8C-w{^7&_Ay*%*snP7bCvHhW3xpx6lD1CQ9{T{SbMx*Mi{m$cZRT}k;)c1jZ4Zt@i z>`46nu0_w~a53)X!dcP)@59~WJ$8O=&;V_*n~a-ww#mHu$nDZ;_xuU9ZmCN0I{`ao z%^Pgh_r#W~GdTSQ+RL>{T{jJ;FgEBWb}brqvs#9CN@TBPRX%eBPfnNPq_* zg^=^Gd8db71Px~M{Vt&wKg`5rDL=I|mg+q(IWXTPoIu{8#<9}+oKVz)O7&CAi(1(nJKUVr^$c9kSLWAeHK*C%f` zw{q`R@F|JUpNSQDw3b-pZ{8YB`p)Fif08~NI?Qfh6>#Gt%?JwtnL?G;;e)XRsS{ne$v z{$J1V3Om9>dnz9p?a%#l#+UoH7IDhi`p9PA6ZiYx8leKw*r^hjY3cjrZHn4d)AEwA zG$O4#^Bj0-tu1~^4Xb^%G*U6A_!TcI24a8FqZu+nJJG0;zgi2NY4%+VikkKwI&8bK zLjmE3%*ORXdm{2HC_@&J|4l}e0EJ{1P1OrXJ2TqgUQq#v2hhSZVe}Pe<3T_2edTt# z9JlN66ot3_Ctx{`;&PF6V(&WU1>tLTa^d{`_Vf)F{JVemQm}je5Zw;& z-FYi5wbw6UnBX-MQ2KLw z;$M#rEPy|~7qR>TOT?N=>9N^9-OG+RH*@Qeel2fw4R`{pV`w zruA~eiDV==$E&;QF+HmUZVck2sU5910PuT-8u#hIISe@OV^KX7z0gQMwsG;@;wu3G z-0;lk8+u%xyD{piq4Nxb%`uVO5jF(1n@-itHv;fas9b8*wJh|-{Dlev_Qpk0Ybc-X zlXf+T>e(jyNo|`LkBvI{L~DHv#m-G( z^puwzJ7urJjs*gdY(dgahNJpYt*nUDWeGu}ievU$`eNaRCb{ z3y8jDp5K8jJNt6td>Teimt!V@OQkr8O@sadyHd;po`M}ic~dE|_k9rfguIPs|I^p6 z{GxL4Kd21Z9KQZPqVj*mC*ZvREQ$d7FDm^ue#YIr2sGwX6;Y#_pi#I{3Wulo8NnFk z2GU1Fq5Tv4!!OzYO8ce(_eTr$(hOvB5~Zgfg8Hu0@)@8F=C{ylL8aP4`gV}haIf?a zTIU=w9?ZrJeQ=Jg?F{7L+?bH@(vGe1w%uL}3ZBQC9T@o@gYg048er1^HPQgg-?H{y zg16%V821C*1_&Ucj?hC8CHoP-a8WQt8F2qpU~wfy>t%^lk2>U*n0LUKdgxC?I~_8O z$p`x~?fv@kS`DPEo()&%9l4=b{a*Y)Jv}Y)PvnA||3ln+ z2*!qAUtc%MV8JK8GEDoouN!g(i;4EAucWD0b(k7d!1&8-Jxxg7N+!kY` znmLt1wOlxrXKfVO*}H~!&yqWg%m*OH9YFY)575AeM(soxZ>|ZGD2Uo+g5$VWq83hE z;b>bl9$EYTRGp9E_^cLPQo^jH#BnX9d!hLD%qEMFrM=0^u%p`dBwu%s(&YqxNha_AiwMv~@b9W!xG>m)Tvq@51Oqc~=8>CW^cWbToEYcfvltgjbu# zwUGEaLUrbN>xIH;vns{t2g%nCFvM`C1E_2aKNN44>;aZFuLx$O>pEC>m2S67#JL@P zBPH6TngjJ!(k;PVwM%%(zkOJB`JzO_f+p!H1FNwPT-2|?054as_b7hw*6=QL-_s$q zKwpxTI3C@3AUBT-n0v>cUOU9SoO3`s=hf&9Ne7-BaKMwtO}8@%rdZj_o`lA%iwtag!lb zx0t$_%sYNx6BdUC`Maxm;$xdHUW%(s9fAZTniAi^_J-476AdC|4$JE`4SfifX>q#O zm-qo{e}}&?e>;mQ?+4k&6GfnmEf}iVZaYjFd$Ui>stQ|WjM%*_f}@p^r;L@Ue$M7a z6%3cnI4fch-K-0{jS*~PdU;j*eKTo(N3-%Gkx(|=1}d#7e7>?@tKM4JP7vB)cdBU4 z_A!E}T%prn=VAYBuXzZhi<3SnA+O#?EJ6$yV9o# z81+pBAPF3v_SW91 zbJ&IE*ov6z`^>TkSeX~Met+bWIGzHyk;ztjdoRC0OLwQ@-t)fWN~+i3>`ZFbmUS?+ z9H}C~ZSzss<(xK0hZ9hn1Zm6WRT;&dac#ovPP-vq}k8N>tD%<@tX7) z96+g4hZ*G2wHUw4LnR_MP66_aHjp&`MmMb-+1i|t9_jg9GAl=C%6bqJk}Z;fhxEFB z%kUtb@U?4aRXF3OPM^2zA%vc-KH5kA<)zO+$CGWEjFWs+%#Mqzo7vy}o$kh`_sWV9 ztu#dGvzS5+0r!;E{a+cm{maIq|FCiY2N?PP#>W5ktgdzL7DLJWm5~usemghL7ad!X z)7(&gkvOt4#DnpXaQWC_GRR8#`;FO=NJJxKy|+ETIgg96cKqi=B>*R(0ifX? z4KaP|{@}aI%%VbXZ9@FR`_5s49*z${4hKBva|hteN6T4=c>XruR;Npt zM1DlElkU1Cms{#`(G1gZ0bicCSD5Aan{3{p@K^nwgiF;RZ}LhuE9#4QuUzLTQ_$^0 z_xMyOJ#F(j(Vo;I&seghg-7_=ysQdI$Zq?D*&X?7+q&m!zh}Io7))>bHTRxj$QUbP z_)p!HW7*aD9M$EV`T5&7Y_VIrYjT|c+!&j)Hsb3Apo|UHjsdm1#j_~Zi@j-v!MHg; z051*@pFkQL7x6-MeSHPcd@@-E#>U*EiIy1i{m<1bs(@S|iuMz<2P6oP%7~SXddX7x zKF{zA$D~SDnO`}+m{bK;4DUb;-pdm@O}irVgm$Z|5=Fu&4y5vM?mtrJ{uL#!FM zQ#DN^uKls#d$53=S~wIGBTf*W0AzyDbAiT${@i602+|Ux{@wV~Ry1n^_3|4LFf;ryFC+xGAGmay9x4y8 zaqag3yRyG(b^FnQ0p-c_Jmz=Df18%XtaZ6cDeFIkVi&nRWg87*&{f;IrD?V5N?dcc zsx?+yeN~1rP9bdP1v;=5+hHL9cQga1Ns|(%_c{FRp%0#qx2eTfm5wlz)Up2sqm<`z z0xzS!Vl1PCecnS#7bYCi6m?MEylFr!uh^f2-o*}|ITn-EuZFRXh?wTJMbOY+=cgHS z#5O-akX3~Lmc?Y*iZ*i#NfNC6xhz6*f~6fh{Kg6f6AfhpD?+&eJ)D6)vkJ0maJk%E zB+3X%0$>~oj89yUP8``7Dq)O*sL5m6&;}Ef@a7r@07Lfd3q$>1M9%&qa`QikOjdi5 z{y!q}f8`@Hp%}sv;Oeh@EE$T8Ir28t5D77Z-nWtKtXm zP14 zdp|%}mR<($iOSEJx=?oQRqR}Lr5T_a{UaEU+O&FoYAXW-49Lig2JRpXp z_Xhk9K8U(Mx_6KOo{tiNvIt_k9TJEwVp$SEjS27!?2NMa1ghwf@#q4)s@1+jU@Qt+ z(?vyRmW+!8Fb)n58vV%HcMKY;Yy?@%9)We4GD(FeT9+ae!5a+S(^c5IbJv|QNQ@64 z29H17jjab}2^7GEBTRoP$s=`WKE!psIA>Biwpt`hIUX6EIzJ>Uz+tMdN~1tP3rLiK zg3#4nA}|pD9`YuNw&b~d_lT*y?TpfK`fD!96jxJs+*%N3fAV*0x{0O;6V~EzlQvDb zM$&9JCp^}zL*gtq`E$a$5Mr{u^$Ki#)%%OnJy4Z<>`GghH@F<2^Yq-aEI9WyrxjA@ zGJ@X3^#TybKw)@u%+W1nEL5o7Y}h)TNMa%FmowANHC1kA;&o@DF8V&WM0G7paT>CK zZ1-RXRJ=nh@@DqyQmTU0mE&LI(_BDUl#`M#)0HIplWPy+4Y6{js45TVX}WKmTBPeA zWOZ8DxdkwA5Ar%&Cf2TT;D4}!CF5=2dF#qRrqM2M2%t|apJz>m>6`raK@a;l$!eE9 z4{o-chQf#kY|8|x*ZMneqlZgB>;K8vkDy87hTe&K4f}Y;jvM@m+fx;=`T1@B3##Wo3CdJAR@6JBlJ%6DY`#{eZsHdj74m9d6Ao5YJVj ziqx>LouNS>(9u*wi~C;YIX3GhT851jh8wa zt{TpbAiCaHZPFAwmj%W87keBsj^tldq1hw_+`tS?S)u$)uciKx`i!Aq*0fe;(qUC7U zNC>_4QOW73{Qg(6#d#xH2ZOV1pNMmKiN^YGn!}z6B$X?}gPfq`AWT5#!qhBAd<|_chnzEX;=1#Fd|;9a_H% zNA|A0VIgldANd4t5B+X7Ow=h2#vaR6v{H>&4mO-s60*@MjDKcMSGZHaia+>}bN_`R z&hLc|*nci`XrInu{%=tHU&FN8k7scNrC;3`_3H)fBPJ#zfZyv6M1YGRGf226Cp^gx zT1q94*&1Mb8X>W}eq{WQhDwa7NNxy~5I;OAw26=#nTpcUKy!4Y!2b_FN-;n)G_p}M z6>b`V5y{M?c^<*bHjc|K=J(4X<}HkI%U;JAH<&jsOSu5}Eh7Nhhe%)TAHHT_>r$(L zL%2Zh+^hZ#HJDp-ft78v=lN=DE1@LU2WgAYMp)9}=8~#TYrS0`Q7a$mwkS4^y`zwP z+)*!N84?_CBnPO|_1*=rL`s21?%jFtCs^80v8@qE5XVXZHZOkL$>qJag1^f8>)^q- zzUslR)OPyE)-NtS4NkpY&rJ!*>#cdCh8_s5JoB5}y|1b?A3*z(JyjiXVZi33=tMGNdpviK~cg#?oSW?rgE_W zatM4+J3sIsmO%S_q7zni*D*!}#bP!4)EjBzrmhOf;7rrgjl@vG!HTFNhxD}IJ%gEY zXBEX(K5*?DUVqpZ^JX3NnLSn^HsKKG#R^~4BX|ARGASX4!kG5BHwU;aA)E+pS-2y17Lqw!{V8I}{u~3W> zu->DDrZ(0Xy8apm2S?s9+Uvz2HW~t(lu0MYZ(_}@Q|daFNRMS)j9R+boZx~cP8>?& zk=iRcH9ct?3i-wk%c$l=JPq3XGvUO3PJfNIHg$caAc2??5sq|jh%lZQZ8F|#PDrg4 z8YUvq4N0&3_N2c^(KNgr;ZnpoQ7tS?+9xewNXwPs8TC+8HXMxL@X$XC@$MFl&B75t z^@heh1;OATTuX~fO7Y1KI-5;?gPzKJRU{%dP>pu$k(yALuDSu&@J&+_e>iQ{&~!Zv zQ{kJd61cV>eMd`2%Z?}}a`X7;d}9XR)*%cYzp__E4qZ6Mt$7_QVu4#o?HJu8qP^lV z+!J&Bc!Km|HwP_4S#{GpD=Ma%>z-C(d(Vdg3Lwq*r~a-9x*K$@b+J`LVN|N69~qk) zECq89z0DW`HR?{$ulP;cdkdF78O*NqG|5#sD>>I5DD=#-!asedX?T%Um zKGPZUZ-S02H$WoWk(@t5LuR7w>IdPUrYxEzlv^m_Z96iirl83ngo)S+3JD;=?&v>s zOK#P5`sZEzOB0OUs~k2^Kw3&Jp!=*Bv6Sd&9 z4w3pMZ$@P}1vPoliDIqt*+ls0MXrS@$NJu%6}UmU@i20Zk;Z{SX94ncwk1HYqjD&J zcMAjCW!s-C#ezQ8->MEeqdX72%@GcqOsEs0o-dit_>&cHXzv_OuGM#yE^gQP*6^m= z7~~2#M>}Wyl34f-eq3iutU>}O9<8pWpul1a{O*7Vci;;rV#Cga%Mlkn*|}Jj=v09b zy<6liumxJ8(m`sfWW$Ik=G=>AF2HE&G;VmF-~ls!;J>{7OIYY%!v6e6cAj@@!2cf! z`@gcYO+y?J1NT4ENc;|cj-$ln;`Zx<)^zwy_)YQ^Q9z-h`I}h6#zqWh zxzmaHN{CeQP}K-_3PhnnBL2IZhxnBUTIP%k0Gc4EpoI|f;y^ z9oa4jPZLxQ@H@{{apcpLt)9` z*g4JtV&t?9FqJR8(yyzTes=*4RIQ@5Ha%mX`kcP3cR2vMKz%uPb6*g~W&a(t@$CTx zLiv6AxsvtmgQ=?OA0PpzgH~8t@UhYPqH_8~4w}xyg6I{4UxERA_ZPb5zqsI=gq#?{b)u`Oapvm!C!*tPCkD69nE1qBD+YYKPh>Kw>~%%6Pe#UU zV8ul~f3{>kaQTr{{4BMBhvMsl;LG#7*EquyO8b*afV_Ad$(?>)Ay76~#Mir>qe+hN zt3no#3$xf(nC}U?`A2m(VKYENB2<(n)qk-kdkQLig|)%PW%0s-A9QybR&n_N(ebHi zC@u7ak+qCQxtKR(naL6jGYMkdDbb!>xUxXF(nlh4^%89j;z`skeP)(XQ1Pzh*=U4c zG>tB(EWWzO*@RbwNMg&R4$>WoVG{y^Zt`R#U#;kU5q1@ei1r>hK}%@S#eXt;N)ZidgfrM38}&UB~V8; zo}D2^pH>^C2%&;8DByyok|!jok^An+nf)6m#38;nnw^Bs7>k5(K{_VEEh%G08lOW& z{R9rqF{3p*&;gS#09#xfN4(Mg{Ll=!%s)?;>B`syeXux*6Hr+FloA~w#!r~i5}Mbn z*j7gISk6*(ZT(V8!o;{&%do8?Rk*O+D=iTux$ri96C_hpJdPJcL|jDS=FTW6-~Xr0 zU$HGhu=e2d&LxsOk9O_!R7!}DpnIB<{U9TnW=!FNsEM3~^N{3{Eq+}=5j+2i7=^=v z6SaeR=vlgmS$Ovox>0i`NFi{MGzMofHq6^b7zk4DS*(#4sNg*3CsLM-1Gk`@7xF-j zCESB-*tY0{I~WsxUl=p#v2VP>MVmLnp{A0`0*OlG!@`J(4{@7OW3a7K1tm@YJoPE{ zHQ)8@fU}2hromY-@>g}-G)Z5v(ugSbkU6I(jZj-mZ1`;Ov{!sFVNAg^U)~VPKBNl$ zIJ~-r8iMmW28G_w2Hw9JS6pvfJ>i*+q*!ZEC%CYK!Q0A%PsB|Nn};;2`=Bh?;sIu0 zNi(k`guj7EpxYZ?6W8YWqXih4G04siG^bS=gjh#3+?-ewgF=(N9y%?99E@*j=eYje zQ?~B!VQy*L!7MX7$erG4Y?sGFYj;C6)SJNS5FW<3q)hTNxs-=^fDW*Ta4*j;X3iM{ zdam1>zY|qFXJ{9nBDJj@AMG`Q@B|zkW-&5I-C*g{uqe19GgiloW*4KmNe1t?wJ$zH zD$Ubo>Gx6OLBv=i8UT z=NG7K0DZqel}7mmDufWzv8~pB#ygP!@Bsh-9Bpik_023Dw9Kpxja+F>9jz<@ZY^vj zp#h~Prw}?5QM$f?ZwAV5jp~iEV2Tf$RdMFhtWDQJJ4`pz+L`4=f((A`IEJ^IkK&Ke zzTfHF?3XvgNDu5L+CeeF-ll!$NeJEg$HYtC0_MYnZXbbC{I#@98>X3avbL&uys372 zL;m{O;8 zs}K!}<``T~T&wQvG}*U{xMN+d98^X?td-Tf?08O4e^kue-zi2MT6(=BdQ=WeV(2#0 zeuBEK%=;`w1KMnH*!&s}yIC1Wki_7Hi!VgdoLCW>vIV9x*`e_2lLG6Mvs?7(o z_9j9{!PD#l`e^|a154Qk5@(ePAj*UYINq1buPPHzIl^r$_S4FO;|%u{({q1<3{Pm! z!Jc#-i!C3P!I8ybS#!r+QBqejg&@P9^k)`1BJ6{G^T;l@%p|w)k{8&vsr3Owru5uE z@$2+YIPKc4Aq(Y>BRI8zNJi4DN^g)s%5u=1maRdUM(vGCkz~{MJI5=9TFeyJ8z`bK zyWZOxTECUY2&akNkaF=BN8-;%piqYP$%}#qPFXI6)?e$6MK&H8WMsU09SQq0E*cps zlWuRYiW~6PyMfWMDl!h9nUvS0P3g}htSp(hI14-s+IKgO$_OocK8icYAh>an54_*J zKXetgWul4COu3jj0BJ|fKdCn}Mr=O}UdN(H^)E84Hnvg(8WGRCs8Jho#=S%N z=N6Vm@+4)E`j`HT0{+{9(e?-uQU}!`-mjTl_H+-P5qnNiR zq3RVkR*Mm*jkovT{F0lu;F z?e(D!)@4C#>M2=1bA_4P#Mq`~p(OHihqRIDbNr{Kc-UC-7&`d4N#P8$$UjF;;o{$`|Cre)KD7&Ip|0|XmviA`hy#1f;* z%Ocyn6+tlg3>51vbMyoI#|&_7?mO_pL(R>QJo@9;g+yhO?#vOg-jIUKikARUZJ?yJ zi14IN>@URKB~>w#KC;2^;DE#5Hc4Ie{p{$T!zn82C}hbar&BBY0C|LbM%+vX0{hO( z*q#Xp+e<+qzrrhUGyEicVSIgjC;U>qrLJ4}6LblBA-&$dxghZXB4PY1Qp942VrWv> zVia;1(p=|6NF@*@Fl2BgnD*J#*TcML+u}}4#EHI$VdA_VVL6t_IwkbZ<);CyA-Z%Z zr|`rPZ9C?0efw^O7|CO%$Jz^56Uv;pF2c1<3(#WgN`$jmCbvkRLjQTi(JGK3T4JCg zN^NNvS&u7(m&3|U0v4j#wpL2Ce6+$EO%OH=4tb|uJsqA3fWCLc#uef+0iKF$6i=PoM}4qp!I1OD{gJDuX6S_ZF1!c9Wgy)JUax%|QkxeirFu~n9<$#8kX|AmL?E9|)7|dD z5F2ggcyshAi#Cn)vLjj-CtGyu8rP9LzZ*FQL6>)cPPV$zHZ6j7^FIr!_2@b~kh%}$ zp=e2F@fX%X#?}-rmQz=t-?1Ztzu@NrK>bzGU8uj{=cLnoH~%mA(f(h+ulrBm;(y>@ zyVw^C4Tu08h0vLb(fv(wvUkrd!MEy;HQWyZW`C8Sa5gRz=bW+LCX7Z6*6WbEHdPO@ zTJrTKX}HQOG&wvBouCjAzmr-h-7zuIUNO-z67ztj?%mlVk-siWMPZbpM8xC#!uIxB z{lkri;GN>uCOr4>YJYDB3FTz|g|vUqc6~SITO_1_vI4PC$u(ewkV<#(LE!N7bK#mj zJoa8K?4Ns*rgJh?@~N?<3x_$}F^Ej#LBjGgS?Np}^cv#k(|5D!>w?&VT7zV zExPuz+VYRHsrR$rl3*0#RQR$Kn8d`XrM(KZUvl!Z+qdS{oV^{`9#KB zTG}0~;7nI-#oyI@a@K*ArHi5T+Z8e@*h3HJW@;E>`Y{ZSEEY?;Ev8>cJ;eZ)EN8{@ zP4*F?ADo9rc0Xk%Ifa)z&$dmq_ck)6;|hvEtA9Xg+lE+zP|mnfHNzcr7&mFbx~yL` zEB>{^o1v55jkFphTiHWnnEh5XXm>aY0*%^;nC3?1WP`k@e(B?n?0>(UI!V{hL5e zC#JMvc=IU#N4Wx971q|SYDVj*R^@qk+S=x9b8u`d2JX6}s2=oG0^T5)!lY2xmxUk6F~$Ys4%;(vy*Zz0%9JSe;Ql z4cZaDi_v4_jBA|%C}=so(-ZE2>$TbNl)xEB`TSeZTkCPDDUINElc7SQn1as6mt1|b z3sw6B(6UM+5rUyj{-zSNJ_ZeSx3}w%;ARlcsE*vbD4ndXd>@(RdKxjG6D|-Ii$zb@ zHyhO4j7N2VQeN>OoME9hP$LDblJjmjD5nMZ4?eOrQAbBSR)*v&HthiHxKO&H%hI(Zx5uDr^QVaz_EO#}hB=BT zrNb0K$t=j>fdveswaTIxoP~{t35B*RF=uY}Ipi#5ZXu22g7Co|Jmo4ylnZs|%I-Ab z>(2G9dgsa!LmBFF7^FI46+Y2U7)~O4_s~6(6HODUp`1}H;7!ssHj!>6YK)HV#+kob z$5rEG%a3B*q(Cn1RM6V8fTgq(E-X)=x8IcpJb7I3N^$kD}W#nFCQ!(_*+^|Nl}ZTixG+ui!sO%NOK*L z|0sbeK`cTl!E(aiUX1ZRTb4XS%ufwO3L685G~q``dS=a#t1h#A!BQH0Tn!~THjC z?K_)-YoL61jl_`W_z4R!1MMELnG0A*XXY&+2wc@@$&^`hG04W4CBL{SNz zSrd=P;r>HAE@+4WLd}!El?zInl=O2+z_O#pKfxP~J>$K05{#8rkZJN1Q3w+;9Ju8)fR$__RjbhR2wMWTBWS{~Am(Jnb9QoFtWEAwZu znay!Gmif15_@58Ze|~O%H^q?Y;Q-)&pZ|ZYgq6ODkpsZ3jYC)&)$bXa|2gpc{ogab azf}mC9^(J+3_$G)HRvF>2LK;9!2bi5F{9f6 literal 0 HcmV?d00001 diff --git a/topfails/templates/viewer/tree.html b/topfails/templates/viewer/tree.html new file mode 100755 index 0000000..7133671 --- /dev/null +++ b/topfails/templates/viewer/tree.html @@ -0,0 +1,9 @@ +{% extends "base.html" %} +{% block content %} +

        {{ tree }}

        +
          +{% for build in newestbuilds %} +
        • {{ build.get_os_display }}: {{ build.get_status_display }}
        • +{% endfor %} +
        +{% endblock %} diff --git a/topfails/templates/viewer/trees.html b/topfails/templates/viewer/trees.html new file mode 100755 index 0000000..51e1767 --- /dev/null +++ b/topfails/templates/viewer/trees.html @@ -0,0 +1,10 @@ +{% extends "base.html" %} +{% block content %} + +

        Trees

        +
        +{% endblock %} diff --git a/topfails/urls.py b/topfails/urls.py new file mode 100644 index 0000000..9304501 --- /dev/null +++ b/topfails/urls.py @@ -0,0 +1,20 @@ +from django.conf.urls.defaults import * + +# Uncomment the next two lines to enable the admin: +from django.contrib import admin +admin.autodiscover() + +urlpatterns = patterns('topfails.viewer.views', + (r'^$', 'index'), + url(r'^trees/(?P.+)?$','trees', name='trees'), + url(r'^tree/(?P.+)?$','tree', name='tree'), + url(r'^changesets/(?P.+)?$','changesets', name='changesets'), + url(r'^changesets/(?P.+)/(?P[a-f0-9]+)$', 'changeset', name='changeset'), + url(r'^tests/(?P.+)?$','tests', name='tests'), + url(r'^test/(?P.+)?$','test', name='test'), + url(r'^timeline/(?P.+)?$','timeline', name='timeline'), + url(r'^topfails/(?P.+)?$','topfails', name='topfails'), + url(r'^failswindow/(?P.+)?$','failswindow', name='failswindow'), + url(r'^latest/(?P.+)?$','latest', name='latest'), + url(r'^Help/(?P.+)?$','Help', name='Help'), +) \ No newline at end of file diff --git a/topfails/viewer/__init__.py b/topfails/viewer/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/topfails/viewer/models.py b/topfails/viewer/models.py new file mode 100644 index 0000000..e7a7e3c --- /dev/null +++ b/topfails/viewer/models.py @@ -0,0 +1,115 @@ +import re +from django.db import models, connection +from datetime import datetime +from time import ctime, sleep, time + +class OS(): + Windows = 0 + Mac = 1 + Linux = 2 + Unknown = 3 + +OS_CHOICES = ( + (OS.Windows, 'Windows'), + (OS.Mac, 'Mac'), + (OS.Linux, 'Linux'), + (OS.Unknown, 'Unknown') +) + +class BuildStatus(): + Success = 0 + TestFailed = 1 + Burning = 2 + Exception = 3 + Unknown = 4 + +BUILDSTATUS_CHOICES = ( + (BuildStatus.Success, 'Success'), + (BuildStatus.TestFailed, 'Test Failed'), + (BuildStatus.Burning, 'Burning'), + (BuildStatus.Exception, 'Exception'), + (BuildStatus.Unknown, 'Unknown') +) + + +class Tree(models.Model): + id = models.AutoField(primary_key=True) + name = models.CharField(max_length=45, blank=True) + + def __unicode__(self): + return self.name + +class Build(models.Model): + id = models.AutoField(primary_key=True) + os = models.IntegerField(choices=OS_CHOICES) + tree = models.ForeignKey(Tree) + starttime = models.IntegerField(null=True, blank=True) + status = models.IntegerField(choices=BUILDSTATUS_CHOICES) + changeset = models.CharField(max_length=80,blank=True) + logfile = models.CharField(max_length=300,blank=True) + + def startdate(self): + return datetime.fromtimestamp(self.starttime) + + def changesetlink(self): + if str(self.tree) == 'Firefox': + return '%s' % ("http://hg.mozilla.org/mozilla-central", self.changeset, self.changeset) + elif str(self.tree) == 'Firefox3.6': + return '%s' % ("http://hg.mozilla.org/releases/mozilla-1.9.2", self.changeset, self.changeset) + elif str(self.tree) == 'Thunderbird' or str(self.tree) == 'SeaMonkey': + return '%s' % ("http://hg.mozilla.org/comm-central", self.changeset, self.changeset) + else : + return '%s' % ("http://hg.mozilla.org/mozilla-central", self.changeset, self.changeset) + + def jsonchangesetlink(self): + return "%s/rev/%s" % ("http://hg.mozilla.org/mozilla-central", self.changeset) + + def tinderboxlink(self): + if self.logfile: + return "http://tinderbox.mozilla.org/showlog.cgi?log=%s/%s" % (self.tree.name, self.logfile) + return "http://tinderbox.mozilla.org/showbuilds.cgi?tree=%s&maxdate=%d&hours=3" % (self.tree.name, self.starttime) + + +class Test(models.Model): + id = models.AutoField(primary_key=True) + name = models.CharField(max_length=300, blank=True) + + def __unicode__(self): + return self.name + +class TestFailure(models.Model): + id = models.AutoField(primary_key=True) + build = models.ForeignKey(Build) + test = models.ForeignKey(Test) + failtext = models.CharField(max_length=400, blank=True) + + @classmethod + def get_most_failing_tests(cls,tree): + return cls.objects.filter(build__tree__name=tree).values('test__name').annotate(count=models.Count('test__name')).order_by('-count')[:25] + + @classmethod + def get_time_failing_tests(cls,tree): + return cls.objects.filter(build__tree__name=tree).values('test__name').annotate(count=models.Count('test__name')).order_by('-count') + + @classmethod + def get_fails_in_timerange(cls,period,tree): + + # Get current time, in seconds. + endtime = int(time()) + + m = re.match("(\d+)([ymwdh])", period) + if m is None: + print >>sys.stderr, "ERROR: bad timespan = '%s'!" % options.timespan + sys.exit(1) + + timespan = int(m.group(1)) * {'y': 365 * 24 * 3600, + 'm': 30 * 24 * 3600, + 'w': 7 * 24 * 3600, + 'd': 24 * 3600, + 'h': 3600}[m.group(2)] + # Set current time to beginning of requested timespan ending now. + curtime = endtime - timespan + qs = cls.get_time_failing_tests(tree) + return qs.filter(build__starttime__gt=curtime) + + diff --git a/topfails/viewer/views.py b/topfails/viewer/views.py new file mode 100644 index 0000000..8c5d9d5 --- /dev/null +++ b/topfails/viewer/views.py @@ -0,0 +1,107 @@ +from django.shortcuts import render_to_response, get_list_or_404 +from topfails.viewer.models import Build, Tree, Test,TestFailure, OS_CHOICES +import re +from django.http import HttpResponse +import json + +def latest(request,tree='Firefox'): + failures = get_list_or_404(TestFailure.objects.filter(build__tree__name=tree).order_by('-build__starttime')[:20]) + if request.GET.has_key('json'): + jtext = [{"testname":f.test.name, "buildstatus":f.build.status, "logfile": f.build.tinderboxlink(),"changeset":f.build.jsonchangesetlink() , "failtext":f.failtext} for f in failures] + return HttpResponse(json.dumps(jtext)) + else: + return render_to_response('viewer/latest.html', {'failures': failures, 'tree' : tree}) + +def index(request,tree='Firefox'): + failures = get_list_or_404(TestFailure.objects.filter(build__tree__name=tree).order_by('-build__starttime')[:20]) + return render_to_response('viewer/latest.html', {'failures': failures, 'tree' : tree}) + + +def trees(request,tree='Firefox'): + alltrees = Tree.objects.all().order_by('name') + return render_to_response('viewer/trees.html', {'trees': alltrees , 'tree' : tree}) + +def tree(request, tree='Firefox'): + newestbuilds = get_list_or_404(Build.objects.filter(tree__name__exact=tree).order_by('-starttime')[:5]) + return render_to_response('viewer/tree.html', {'tree': tree, 'newestbuilds': newestbuilds}) + +def changesets(request,tree='Firefox'): + build_csets = Build.objects.filter(tree__name__exact=tree).values('changeset').distinct() + return render_to_response('viewer/changesets.html', { 'tree' : tree,'changesets': [b['changeset'] for b in build_csets]}) + +def changeset(request, changeset,tree='Firefox'): + builds = get_list_or_404(Build, changeset__exact=changeset) + return render_to_response('viewer/changeset.html', {'changeset': changeset, 'builds': builds, 'tree' : tree}) + +def tests(request,tree='Firefox'): + test_names = TestFailure.objects.filter(build__tree__name__exact=tree).values('test__name').distinct() + if request.GET.has_key('json'): + jtext = list(test_names) + return HttpResponse(json.dumps(jtext)) + else: + return render_to_response('viewer/tests.html', { 'tree' : tree, 'tests': [t['test__name'] for t in test_names]}) + +def test(request,tree='Firefox'): + failures = get_list_or_404(TestFailure.objects.filter(build__tree__name__exact=tree).filter(test__name__exact=request.GET['name']).order_by('-build__starttime')[:10000]) + #if request.GET.has_key('json'): + #jtext = list(failures) + #return HttpResponse(json.dumps(jtext)) + #else: + return render_to_response('viewer/test.html', {'test': request.GET['name'], 'failures': failures, 'tree' : tree}) + +def topfails(request,tree='Firefox'): + failures = TestFailure.get_most_failing_tests(tree) + if request.GET.has_key('json'): + jtext = list(failures) + return HttpResponse(json.dumps(jtext)) + else: + return render_to_response('viewer/topfails.html', {'failures': failures, 'tree' : tree}) + +def Help(request,tree): + return render_to_response('viewer/Help.html',{'tree':tree}) + +def timeline(request,tree='Firefox'): + name = request.GET['name'] + builds = get_list_or_404(Build.objects.filter(tree__name__exact=tree), test__name__exact=name) + buildlist = [] + desc_list = [] + for b in builds: + descs = b.testfailure_set.filter(testfailure__name__exact=name).order_by('id') + desc = '\n'.join(descs.values_list('description', flat=True)) + if desc not in desc_list: + desc_list.append(desc) + desc_i = desc_list.index(desc) + buildlist.append({'build': b, + 'desctype': desc_i, + 'description': desc, + 'os': OS_CHOICES[b.os][1], + 'time': b.startdate().isoformat() + "Z", + }) + return render_to_response('viewer/timeline.html', {'test': name, + 'descriptions': desc_list, + 'builds': buildlist, 'tree' : tree}) + +def failswindow(request,tree='Firefox'): + period=request.GET['window'] + m = re.match("(\d+)([ymwdh])", period) + failures = TestFailure.get_fails_in_timerange(period,tree) + if request.GET.has_key('json'): + jtext = list(failures) + return HttpResponse(json.dumps(jtext)) + else: + if m.group(2) == 'd': + prd='days' + elif m.group(2) == 'h': + prd = 'hours' + elif m.group(2) == 'w': + prd = 'weeks' + elif m.group(2) == 'm': + prd = 'months' + elif m.group(2) == 'y': + prd = 'years' + else: + prd = 'days' + + + return render_to_response('viewer/failswindow.html', {'failures': failures,'n':m.group(1),'d':prd, 'tree' : tree}) + diff --git a/unittest-log.py b/unittest-log.py new file mode 100755 index 0000000..4221097 --- /dev/null +++ b/unittest-log.py @@ -0,0 +1,532 @@ +#!/usr/bin/env python +#Indentation is 2 spaces ***** DO NOT USE TABS ***** + +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (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.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is TopFails site code. +# +# The Initial Developer of the Original Code is +# Mozilla foundation +# Portions created by the Initial Developer are Copyright (C) 2010 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): +# Serge Gautherie +# Ted Mielczarek . +# Murali Nandigama +# Jeff Hammel +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 2 or later (the "GPL"), or +# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** + +import re, os, sys, urllib, logging +import MySQLdb # Moved from sqlite3 db to MySQL +from time import ctime, sleep, time +from math import ceil +from optparse import OptionParser +from gzip import GzipFile +import binascii + +# local imports +import log_parser +import mappings + +try: + # 'Availability: Unix.' + from time import tzset +except ImportError: + print >>sys.stderr, "WARNING: time.tzset() is not available on non-Unixes!" + + # Define a fake function. (for development use only) + # ToDo: Investigate Windows/etc situation. (Bug 525699) + def tzset(): + pass + +try: + import simplejson as json +except ImportError: + try: + # 'New in version 2.6.' + import json + except ImportError: + print >>sys.stderr, "ERROR: no simplejson nor json package found!" + sys.exit(1) + +from dbschema import CreateDBSchema + +# Number of seconds in a hour: 60 mn * 60 s = 3600 s. +S_IN_H = 3600 +# Download data in 24 hours chunks so as not to overwhelm the tinderbox server. +chunksize = 24 * S_IN_H +# seconds between requests +SLEEP_TIME = 1 + +class BuildStatus(): + # Unavailable builds to skip. + # Values need (only) to be less than the 'Success' one. + NoBuild = -2 + InProgress = -1 + + # Builds to save in the db. + # Do not change these values (without updating db data). + Success = 0 + TestFailed = 1 + Burning = 2 + Exception = 3 + Unknown = 4 + +csetre = re.compile("rev/([0-9A-Za-z]+)") +def FindChangesetInScrape(scrape): + for line in scrape: + m = csetre.search(line) + if m: + return m.group(1) + return None + +buildStatuses = { + # "No build in progress". + "null": BuildStatus.NoBuild, + # "Build in progress". + "building": BuildStatus.InProgress, + # "Successful build". + "success": BuildStatus.Success, + # "Successful build, but tests failed". + "testfailed": BuildStatus.TestFailed, + # "Build failed". + "busted": BuildStatus.Burning, + # "Non-build failure". (i.e. "automation failure") + "exception": BuildStatus.Exception, +} +def BuildStatusFromText(status): + try: + return buildStatuses[status] + except KeyError: + # Log 'Unknown' status failure: this should not happen (unless new statuses are created), but we want to know if it does. + logging.info("WARNING: unknown status = '%s'!" % status) + return BuildStatus.Unknown + +def GetOrInsertTree(conn, tree): + """Get an id for a tree named |tree|. If it's not already in the trees + table, insert a new row and return the id.""" + + conn.execute(""" + SELECT id FROM viewer_tree WHERE name = %s + """, (tree)) + if conn.rowcount > 0: + return conn.fetchone()[0] + + # need to insert it + conn.execute(""" + INSERT INTO viewer_tree (name) VALUES (%s) + """, (tree)) + connection.commit() + return conn.lastrowid + +def GetOrInsertTest(conn, testname): + """Get an id for a test named |testname|. If it's not already in the testnames + table, insert a new row and return the id.""" + + conn.execute(""" + SELECT id FROM viewer_test WHERE name = %s + """, (testname)) + if conn.rowcount > 0: + return conn.fetchone()[0] + + # need to insert it + conn.execute(""" + INSERT INTO viewer_test (name) VALUES (%s) + """, (testname)) + connection.commit() + return conn.lastrowid + +def HaveBuild(conn, treeid, _os, starttime): + """See if we already have this build in our database.""" + conn.execute(""" + SELECT COUNT(*) FROM viewer_build WHERE tree_id = %s AND os = %s AND starttime = %s + """, (treeid, _os, starttime)) + return conn.fetchone()[0] == 1 + +def UpdateLogfile(conn, treeid, _os, starttime, logfile): + """Update empty 'logfile' for a given build (added in db schema v1).""" + conn.execute(""" + UPDATE viewer_build SET logfile = %s WHERE tree_id = %s AND os = %s AND starttime = %s AND logfile IS NULL + """, (logfile, treeid, _os, starttime)) + connection.commit() + +def InsertBuild(conn, treeid, _os, starttime, status, logfile, changeset): + """Insert a build into the builds table and return the id.""" + conn.execute(""" + INSERT INTO viewer_build (tree_id, os, starttime, status, logfile, changeset) VALUES (%s, %s, %s, %s, %s, %s) + """, (treeid, _os, starttime, status, logfile, changeset)) + connection.commit() + return conn.lastrowid + +def HaveFailRecord(conn,buildid, result, testnames_id): + """See if we already have this failRecord in our database.""" + conn.execute(""" + SELECT COUNT(*) FROM viewer_testfailure WHERE build_id = %s AND test_id = %s + """, (buildid, testnames_id)) + return conn.fetchone()[0] == 1 + +def InsertTest(conn, buildid, result, testnames_id, description): + # ToDo: Add column to save result. + conn.execute(""" + INSERT INTO viewer_testfailure (build_id, test_id, failtext) VALUES (%s, %s, %s) + """, (buildid, testnames_id, description)) + connection.commit() +def asciirepl(match): + # replace the hexadecimal characters with ascii characters + s = match.group() + return binascii.unhexlify(s) + +def reformat_content(data): + p = re.compile(r'\\x(\w{2})') + return p.sub(asciirepl, data) + + +def fix_tbox_json(s): + """Fixes up tinderbox json. + + Tinderbox returns strings as single-quoted strings, and occasionally + includes the unquoted substring 'undef' (with quotes) in the output, e.g. + + {'key': 'hello 'undef' world'} + + should return a dictionary + + {'key': 'hello \'undef\' world'} + """ + + json_data = re.sub(r"^tinderbox_data\s*=\s*", "", s) + json_data = re.sub(r";$", "", json_data) + retval = [] + in_str = False + in_esc = False + skip = 0 + for i,c in enumerate(json_data): + # The tinderbox data is a fracked json. and it some times contains + # Control characters. that would totally fail the json.loads step. + # So, eliminate them .. all of them .. here -- Murali + if (c < '\xFD' and c > '\x1F') or c == '\n' or c == '\r' : + if skip > 0: + skip -= 1 + continue + + if in_str: + if in_esc: + if c == "'": + retval.append("'") + else: + retval.append("\\") + retval.append(c) + in_esc = False + elif c == "\\": + in_esc = True + elif c == "\"": + retval.append("\\\"") + elif c == "'": + if json_data[i:i+7] == "'undef'": + retval.append("'undef'") + skip = 7 + else: + retval.append("\"") + in_str = False + else: + retval.append(c) + else: + if c == "'": + retval.append("\"") + in_str = True + else: + retval.append(c) + return "".join(retval) + +parser = OptionParser() +parser.add_option("-s", "--span", action="store", + dest="timespan", default="20d", + help="Period of time to fetch data for (N[y,m,w,d,h], default=%default)") +parser.add_option("-t", "--tree", action="store", + dest="tree", default="Firefox", + help="Tinderbox tree to fetch data from (default=%default)") +parser.add_option("-d", "--database", action="store", + dest="db", default="topfails", + help="Database filename (default=%default)") +parser.add_option("--host", action="store", + dest="dbhost", default="localhost", + help="Database host name (default=%default)") +parser.add_option( "--port", action="store", + dest="dbport",default="3306", + help="Database port (default=%default)") +parser.add_option("-u", "--user", action="store", + dest="dbuser", default="root", + help="Database username (default=%default)") +parser.add_option("-p", "--passwd", action="store", + dest="dbpasswd", + help="Database user password") +parser.add_option("-v", "--verbose", action="store_true", + dest="verbose", default="False", + help="Enable verbose logging") +parser.add_option("--debug", action='store_true', + dest='debug', default=False, + help="enable interactive debugger on exceptions (pdb)") +parser.add_option("--die", action='store_true', + dest='die', default=False, + help="enable application to die on error") +(options, args) = parser.parse_args() + +# check parsed options +if options.tree not in mappings.trees: + parser.error("Unknown tree: '%s'; should be one of [%s]" % (options.tree, ', '.join(mappings.trees))) + +logging.basicConfig(level=options.verbose and logging.DEBUG or logging.WARNING) + +os.environ['TZ'] = "US/Pacific" +tzset() +# Get current time, in seconds. +endtime = int(time()) + +m = re.match("(\d+)([ymwdh])", options.timespan) +if m is None: + print >>sys.stderr, "ERROR: bad timespan = '%s'!" % options.timespan + sys.exit(1) + +timespan = int(m.group(1)) * {'y': 365 * 24 * S_IN_H, + 'm': 30 * 24 * S_IN_H, + 'w': 7 * 24 * S_IN_H, + 'd': 24 * S_IN_H, + 'h': S_IN_H}[m.group(2)] +# Set current time to beginning of requested timespan ending now. +curtime = endtime - timespan + + +createdb=False + + +try: + connection = MySQLdb.connect (host = options.dbhost, + port = int(options.dbport), + db = options.db, + user = options.dbuser, + passwd = options.dbpasswd) + conn=connection.cursor() +except MySQLdb.Error, e: + print "Error %d: %s" % (e.args[0], e.args[1]) + createdb = True + + +if createdb: + connection = MySQLdb.connect (host = options.dbhost, + port = int(options.dbport), + user = options.dbuser, + passwd = options.dbpasswd) + conn = connection.cursor() + try: + createdatabase='create database %s' %(options.db) + conn.execute (createdatabase) + conn.close() + connection.commit() + connection.close() + except MySQLdb.Error, e: + print "Error %d: %s" % (e.args[0], e.args[1]) + sys.exit (1) + try: + connection = MySQLdb.connect (host = options.dbhost, + port = int(options.dbport), + db = options.db, + user = options.dbuser, + passwd = options.dbpasswd) + conn=connection.cursor() + except MySQLdb.Error, e: + print "Error %d: %s" % (e.args[0], e.args[1]) + sys.exit(1) + + CreateDBSchema(conn) + + +treeid = GetOrInsertTree(conn, options.tree) + +logging.info("Reading tinderbox data...") + +chunk = 0 +# add a fudge factor here, since builds can take up to 3 hours to finish, +# and we can't get the changeset unless we ask for time up to the end of the +# build +endtime += 3 * S_IN_H +timespan += 3 * S_IN_H +totalchunks = int(ceil(float(timespan) / chunksize)) + +while curtime < endtime and chunk < totalchunks: + chunk += 1 + logging.info("Chunk %d/%d" % (chunk, totalchunks)) + + if (endtime - curtime) < chunksize: + chunksize = endtime - curtime + + tboxurl = "http://tinderbox.mozilla.org/showbuilds.cgi?tree=%(tree)s&maxdate=%(maxdate)d&noignore=1&hours=%(hours)d&json=1&noignore=1" \ + % {'tree': options.tree, + 'maxdate': curtime + chunksize, # tbox wants the end time + 'hours': int(chunksize / S_IN_H)} + u = urllib.urlopen(tboxurl) + tboxjson = u.read() + #tboxjson = tboxjson.encode('utf-8').decode('string_escape').decode('utf-8') + #tboxjson = ''.join(u.readlines()) + u.close() + + tboxjson = fix_tbox_json(tboxjson) + try: + tboxdata = json.loads(tboxjson) + except Exception, inst: + print >>sys.stderr, "Error parsing JSON: %s" % inst + continue + + # dictionary of parsers + parsers = { + 'check': log_parser.CheckParser, + 'mochitest': log_parser.MochitestParser, + 'reftest': log_parser.ReftestParser, + 'jsreftest': log_parser.ReftestParser, + 'crashtest': log_parser.ReftestParser, + 'xpcshell': log_parser.XPCshellParser, + } + + # regular expression to find the harness + harness_regex = r'.* (%s)(-.*)?' % '|'.join(parsers.keys()) + + # we only care about unit test boxes + unittest_indices = [(logname, index) #tboxdata['build_name_index'][index] + for logname, index in tboxdata['build_name_index'].items() + if re.search("ref|mochi|xpc|check", logname)] + + # 'TestFailed' expected log format is "result | test | optional text". + # testfailedRe = re.compile(r"(TEST-UNEXPECTED-.*) \| (.*) \|(.*)") + # XXX ^ to delete + + # read build table + for timerow in tboxdata['build_table']: + for logname, index in unittest_indices: + if index >= len(timerow) or timerow[index] == -1: + continue + + build = timerow[index] + if 'buildname' not in build or \ + 'logfile' not in build: + continue + + status = BuildStatusFromText(build['buildstatus']) + # Skip unavailable "builds". + if status < BuildStatus.Success: + continue + + name = build['buildname'] + build_name_dict = mappings.parse_build_name(name) + if build_name_dict: + _os = mappings.OS_to_index[build_name_dict['os']] + else: + _os = -1 # UNKNOWN + starttime = int(build['buildtime']) + # skip builds we've already seen + if HaveBuild(conn, treeid, _os, starttime): + logging.info("Skipping already seen build '%s' at %d (%s)" % (name, starttime, ctime(starttime))) + + # Call 'UpdateLogfile()' anyway. + UpdateLogfile(conn, treeid, _os, starttime, build['logfile']) + continue + + # must have scrape data for changeset + if build['logfile'] not in tboxdata['scrape']: + continue + changeset = FindChangesetInScrape(tboxdata['scrape'][build['logfile']]) + if changeset is None: + continue + + buildid = InsertBuild(conn, treeid, _os, starttime, status, build['logfile'], changeset) + + # 'Success' is fine as is. + if status == BuildStatus.Success: + pass + + # Parse log to save 'TestFailed' results. + elif status == BuildStatus.TestFailed : + logging.info("Checking build log for '%s' at %d (%s)" % (name, starttime, ctime(starttime))) + try: + failures = [] + # Grab the build log. + log, headers = urllib.urlretrieve("http://tinderbox.mozilla.org/%s/%s" % (options.tree, build['logfile'])) + gz = GzipFile(log) # I need a list of lines from the build log + + # assured to match because we search for this above + harness_type = re.match(harness_regex, logname).groups()[0] + parser = parsers.get(harness_type, log_parser.LogParser)() + failures = parser.parse(gz) + + # add the failures to the database + for failure in failures: + + # convenience variables; can probably delete + test = failure['test'] + text = failure['text'] + reason = failure['reason'] + + testnames_id=GetOrInsertTest(conn,test) + if HaveFailRecord(conn,buildid, reason, testnames_id): + logging.info("Skipping already recorded failure '%s' in build with id '%s' with failure record '%s' " % (test, buildid, text)) + else: + InsertTest(conn, buildid, reason, testnames_id, text) + + except Exception, e: + errstring = "Unexpected error: %s" % e + if options.debug: + print errstring + import pdb; pdb.set_trace() + elif options.die: + raise + else: + logging.error(errstring) + + # Ignore 'Burning' builds: tests may have run nontheless, but it's safer to discard them :-| + elif status == BuildStatus.Burning: + continue + + # Ignore 'Exception' builds: should only be worse than 'Burning'. + # (Don't know much at time of writing, since this feature is not active yet: see bug 476656 and follow-ups.) + elif status == BuildStatus.Exception: + continue + + # Save 'Unknown' status failure: this should not happen (unless new statuses are created), but we want to know if it does. + elif status == BuildStatus.Unknown: + # Add a fake test failure. + InsertTest(conn, buildid, "TEST-UNEXPECTED-FAIL", "99999999999", "Unknown status = '%s'!" % build['buildstatus']) + continue + + + + if chunk < totalchunks: + sleep(SLEEP_TIME) + curtime += chunksize + +conn.close() +connection.commit() +connection.close() +logging.info("Done")