<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>139525</bug_id>
          
          <creation_ts>2014-12-10 19:43:07 -0800</creation_ts>
          <short_desc>REGRESSION (r174642): Watchdog timer expiration reported as DumpRenderTree.app timeout instead of test failure</short_desc>
          <delta_ts>2014-12-16 10:04:34 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 8.1</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Regression</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>ap</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1054392</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-12-10 19:43:07 -0800</bug_when>
    <thetext>A test that calls testRunner.waitUntilDone() and doesn&apos;t call testRunner.notifyDone() before the DumpRenderTree watchdog timer expires may be incorrectly reported as a DumpRenderTree.app timeout (i.e. the process was consider unresponsive by run-webkit-tests) instead of a test failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054393</commentid>
    <comment_count>1</comment_count>
      <attachid>243090</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-12-10 19:46:30 -0800</bug_when>
    <thetext>Created attachment 243090
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054395</commentid>
    <comment_count>2</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-12-10 19:53:53 -0800</bug_when>
    <thetext>Committed r177129: &lt;http://trac.webkit.org/changeset/177129&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055725</commentid>
    <comment_count>3</comment_count>
      <attachid>243090</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-12-15 13:47:26 -0800</bug_when>
    <thetext>Comment on attachment 243090
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=243090&amp;action=review

&gt; Tools/Scripts/webkitpy/port/ios.py:89
&gt; +            # DumpRenderTree.app waits for the WebThread to run before dumping its output. In practice
&gt; +            # it seems sufficient to wait up to 80ms to ensure that the WebThread ran and hence output
&gt; +            # for the test is dumped.
&gt; +            return 80 * 1000

I don&apos;t think that this does what is says it does. This added code changes default timeout from 35 seconds to 80 seconds, and it changes slow test timeout from 175 seconds to 400 seconds.

It is not clear to me what the actual problem was. DumpRenderTree&apos;s timeout is 30 seconds, are you saying that 5 seconds is not enough for the result to propagate? That would be surprising.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055978</commentid>
    <comment_count>4</comment_count>
      <attachid>243090</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2014-12-16 08:26:42 -0800</bug_when>
    <thetext>Comment on attachment 243090
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=243090&amp;action=review

&gt;&gt; Tools/Scripts/webkitpy/port/ios.py:89
&gt;&gt; +            return 80 * 1000
&gt; 
&gt; I don&apos;t think that this does what is says it does. This added code changes default timeout from 35 seconds to 80 seconds, and it changes slow test timeout from 175 seconds to 400 seconds.
&gt; 
&gt; It is not clear to me what the actual problem was. DumpRenderTree&apos;s timeout is 30 seconds, are you saying that 5 seconds is not enough for the result to propagate? That would be surprising.

You&apos;re right! I meant to write seconds instead of milliseconds. Yes, 5 seconds wasn&apos;t enough time for the results to propagate when running 16 to 24 instances of DumpRenderTree (why?).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055993</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-12-16 10:04:34 -0800</bug_when>
    <thetext>I think that it&apos;s probably not about propagation, but about returning to event loop - DumpRenderTree detects the timeout with a watchdog timer, so the timer needs to fire in order for this to work.

I don&apos;t think that enabling a huge run-webkit-tests timeout is the right answer, as that makes tests that freeze permanently take an inordinate amount of time. Instead, I&apos;m fixing this by having both types of timeout be reported uniformly.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243090</attachid>
            <date>2014-12-10 19:46:30 -0800</date>
            <delta_ts>2014-12-10 19:51:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139525-20141210194712.patch</filename>
            <type>text/plain</type>
            <size>2489</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc3MTI4CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNGNkNjE5Y2ZkNjJiNmMyZTI5MjkyYTlhM2EyYWZjZWI0
NGVkY2JjYS4uNmU5ZWUyNTQ5MmVjMTIyYTdhYWVmNjllNDY5NDBkMTljNzFiODUzYSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3
IEBACisyMDE0LTEyLTEwICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAg
ICAgICBbaU9TXSBSRUdSRVNTSU9OIChyMTc0NjQyKTogV2F0Y2hkb2cgdGltZXIgZXhwaXJhdGlv
biByZXBvcnRlZCBhcyBEdW1wUmVuZGVyVHJlZS5hcHAKKyAgICAgICAgdGltZW91dCBpbnN0ZWFk
IG9mIHRlc3QgZmFpbHVyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTM5NTI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW5jcmVhc2UgdGhlIGRlZmF1bHQgcHJvY2VzcyB0aW1lb3V0IGxpbWl0IGluIHJ1
bi13ZWJraXQtdGVzdHMgdG8gODBtcyB0byBwcmV2ZW50CisgICAgICAgIHJ1bi13ZWJraXQtdGVz
dHMgZnJvbSBwcmVtYXR1cmVseSB0ZXJtaW5hdGluZyBEdW1wUmVuZGVyVHJlZS5hcHAgYmVmb3Jl
IGl0IGR1bXBzCisgICAgICAgIG91dHB1dC4KKworICAgICAgICBGb2xsb3dpbmcgPGh0dHA6Ly90
cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE3NDY0Mj4sIER1bXBSZW5kZXJUcmVlLmFwcCB3YWl0
cworICAgICAgICBmb3IgdGhlIFdlYlRocmVhZCB0byBzcGluIGl0cyBydW4gbG9vcCBiZWZvcmUg
ZHVtcGluZyBpdHMgb3V0cHV0LiBBIHRlc3QgdGhhdAorICAgICAgICBjYWxscyB0ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKSBhbmQgZG9lcyBub3Qgc3Vic2VxdWVudGx5IGNhbGwgdGVzdFJ1bm5l
ci5ub3RpZnlEb25lKCkKKyAgICAgICAgYmVmb3JlIER1bXBSZW5kZXJUcmVlLmFwcCdzIHdhdGNo
ZG9nIHRpbWVyIGV4cGlyZXMgbWF5IGJlIGluY29ycmVjdGx5IHJlcG9ydGVkCisgICAgICAgIGJ5
IHJ1bi13ZWJraXQtdGVzdHMgYXMgYSBEdW1wUmVuZGVyVHJlZS5hcHAgdGltZW91dCBpbnN0ZWFk
IG9mIGEgdGVzdCBmYWlsdXJlCisgICAgICAgIGJlY2F1c2UgcnVuLXdlYmtpdC10ZXN0cyBtYXkg
dGVybWluYXRlIGEgRHVtcFJlbmRlclRyZWUuYXBwIHByb2Nlc3Mgd2hlbiBpdAorICAgICAgICBl
eGNlZWRzIGl0cyBwcm9jZXNzIHRpbWUgbGltaXQgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHN1Y2gg
YSBEdW1wUmVuZGVyVHJlZS5hcHAKKyAgICAgICAgcHJvY2VzcyB3YXMgd2FpdGluZyBmb3IgdGhl
IFdlYlRocmVhZCB0byBydW4gc28gYXMgdG8gZHVtcCBvdXRwdXQuCisKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdHB5L3BvcnQvaW9zLnB5OgorICAgICAgICAoSU9TU2ltdWxhdG9yUG9ydC5kZWZh
dWx0X3RpbWVvdXRfbXMpOgorCiAyMDE0LTEyLTA5ICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEgIDxn
dXN0YXZvLm5vcm9uaGFAY29sbGFib3JhLmNvbT4KIAogICAgICAgICBbR1RLXVtXSzJdIEFkZCBI
VE1MNSBOb3RpZmljYXRpb25zIHN1cHBvcnQKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvcG9ydC9pb3MucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvaW9zLnB5Cmlu
ZGV4IDUzNzFlNzNjYTQ2NTQ1NWU3MWY1NWVmN2JmM2U1OTcxYTM2MTEyOWUuLjE5NmQ4NGY1ZGZl
YjNiOWE5YjExNzdhOTg5OWM1ZjM3ZGU4NzU5NTQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvcG9ydC9pb3MucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2lv
cy5weQpAQCAtODIsNiArODIsMTEgQEAgY2xhc3MgSU9TU2ltdWxhdG9yUG9ydChQb3J0KToKICAg
ICBkZWYgZGVmYXVsdF90aW1lb3V0X21zKHNlbGYpOgogICAgICAgICBpZiBzZWxmLmdldF9vcHRp
b24oJ2d1YXJkX21hbGxvYycpOgogICAgICAgICAgICAgcmV0dXJuIDM1MCAqIDEwMDAKKyAgICAg
ICAgaWYgbm90IHNlbGYuZ2V0X29wdGlvbignd2Via2l0X3Rlc3RfcnVubmVyJyk6CisgICAgICAg
ICAgICAjIER1bXBSZW5kZXJUcmVlLmFwcCB3YWl0cyBmb3IgdGhlIFdlYlRocmVhZCB0byBydW4g
YmVmb3JlIGR1bXBpbmcgaXRzIG91dHB1dC4gSW4gcHJhY3RpY2UKKyAgICAgICAgICAgICMgaXQg
c2VlbXMgc3VmZmljaWVudCB0byB3YWl0IHVwIHRvIDgwbXMgdG8gZW5zdXJlIHRoYXQgdGhlIFdl
YlRocmVhZCByYW4gYW5kIGhlbmNlIG91dHB1dAorICAgICAgICAgICAgIyBmb3IgdGhlIHRlc3Qg
aXMgZHVtcGVkLgorICAgICAgICAgICAgcmV0dXJuIDgwICogMTAwMAogICAgICAgICByZXR1cm4g
c3VwZXIoSU9TU2ltdWxhdG9yUG9ydCwgc2VsZikuZGVmYXVsdF90aW1lb3V0X21zKCkKIAogICAg
IGRlZiBzdXBwb3J0c19wZXJfdGVzdF90aW1lb3V0KHNlbGYpOgo=
</data>
<flag name="review"
          id="267944"
          type_id="1"
          status="+"
          setter="zalan"
    />
          </attachment>
      

    </bug>

</bugzilla>