<?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>212268</bug_id>
          
          <creation_ts>2020-05-22 10:35:47 -0700</creation_ts>
          <short_desc>[WKTR] Make TestController::resetStateToConsistentValues() more robust against failures to navigate to about:blank</short_desc>
          <delta_ts>2020-05-22 11:19:08 -0700</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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>ap</cc>
    
    <cc>beidson</cc>
    
    <cc>ggaren</cc>
    
    <cc>jbedard</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1655351</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-22 10:35:47 -0700</bug_when>
    <thetext>Make TestController::resetStateToConsistentValues() more robust against failures to navigate to about:blank.

In &lt;rdar://problem/63493074&gt;, we have evidence that TestController::resetStateToConsistentValues() sometimes fails to load about:blank, likely due to an unresponsive WebProcess. When this happens, WebKitTestRunner reports the test as timing out and logs this on stderr:
&quot;&quot;&quot;
  &lt;unknown&gt; - TestController::run - Failed to reset state to consistent values
  #PROCESS UNRESPONSIVE - com.apple.WebKit.WebContent.Development (pid 57421)
&quot;&quot;&quot;

This is unfortunate because this does not indicate that anything is particularly wrong with the test in question. Rather, it indicates that the WebProcess is unresponsive (likely due to a hang caused by a previous test), which prevents WebKitTestRunner to reset the state in order to run the test.

I propose that if we fail to load about:blank once, we log an error message to stderr but then terminate the WebProcess and try once again, to make WebKitTestRunner more robust.
I have verified the change locally, by injecting a script in resetStateToConsistentValues() that causes a WebProcess hang. Before my change, the test would time out and the same logging as in &lt;rdar://problem/63493074&gt; would show. After my change though, the test would pass successfully despite the WebProcess hang.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655353</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-22 10:35:57 -0700</bug_when>
    <thetext>&lt;rdar://problem/63493074&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655357</commentid>
    <comment_count>2</comment_count>
      <attachid>400056</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-22 10:38:02 -0700</bug_when>
    <thetext>Created attachment 400056
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655364</commentid>
    <comment_count>3</comment_count>
      <attachid>400056</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2020-05-22 10:58:33 -0700</bug_when>
    <thetext>Comment on attachment 400056
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655371</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-22 11:19:08 -0700</bug_when>
    <thetext>Committed r262065: &lt;https://trac.webkit.org/changeset/262065&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 400056.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400056</attachid>
            <date>2020-05-22 10:38:02 -0700</date>
            <delta_ts>2020-05-22 11:19:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-212268-20200522103801.patch</filename>
            <type>text/plain</type>
            <size>3679</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYyMDU4CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODE4OTk1N2VhY2FlYjdjMTdiM2I5N2E4YTU3OTU4MzUw
NmIyNmE1NS4uMTU1MTQ3NzQ5OWYyMDkzMzMzYTc2Mzg4YTQ5Y2M1NTBiZmQxYmU2MiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1
IEBACisyMDIwLTA1LTIyICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAg
ICAgW1dLVFJdIE1ha2UgVGVzdENvbnRyb2xsZXI6OnJlc2V0U3RhdGVUb0NvbnNpc3RlbnRWYWx1
ZXMoKSBtb3JlIHJvYnVzdCBhZ2FpbnN0IGZhaWx1cmVzIHRvIG5hdmlnYXRlIHRvIGFib3V0OmJs
YW5rCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTIy
NjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYzNDkzMDc0PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1ha2UgVGVzdENvbnRyb2xsZXI6OnJlc2V0
U3RhdGVUb0NvbnNpc3RlbnRWYWx1ZXMoKSBtb3JlIHJvYnVzdCBhZ2FpbnN0IGZhaWx1cmVzIHRv
IG5hdmlnYXRlIHRvIGFib3V0OmJsYW5rLgorCisgICAgICAgIEluIDxyZGFyOi8vcHJvYmxlbS82
MzQ5MzA3ND4sIHdlIGhhdmUgZXZpZGVuY2UgdGhhdCBUZXN0Q29udHJvbGxlcjo6cmVzZXRTdGF0
ZVRvQ29uc2lzdGVudFZhbHVlcygpIHNvbWV0aW1lcworICAgICAgICBmYWlscyB0byBsb2FkIGFi
b3V0OmJsYW5rLCBsaWtlbHkgZHVlIHRvIGFuIHVucmVzcG9uc2l2ZSBXZWJQcm9jZXNzLiBXaGVu
IHRoaXMgaGFwcGVucywgV2ViS2l0VGVzdFJ1bm5lcgorICAgICAgICByZXBvcnRzIHRoZSB0ZXN0
IGFzIHRpbWluZyBvdXQgYW5kIGxvZ3MgdGhpcyBvbiBzdGRlcnI6CisgICAgICAgICIiIgorICAg
ICAgICA8dW5rbm93bj4gLSBUZXN0Q29udHJvbGxlcjo6cnVuIC0gRmFpbGVkIHRvIHJlc2V0IHN0
YXRlIHRvIGNvbnNpc3RlbnQgdmFsdWVzCisgICAgICAgICNQUk9DRVNTIFVOUkVTUE9OU0lWRSAt
IGNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5EZXZlbG9wbWVudCAocGlkIDU3NDIxKQorICAg
ICAgICAiIiIKKworICAgICAgICBUaGlzIGlzIHVuZm9ydHVuYXRlIGJlY2F1c2UgdGhpcyBkb2Vz
IG5vdCBpbmRpY2F0ZSB0aGF0IGFueXRoaW5nIGlzIHBhcnRpY3VsYXJseSB3cm9uZyB3aXRoIHRo
ZSB0ZXN0IGluCisgICAgICAgIHF1ZXN0aW9uLiBSYXRoZXIsIGl0IGluZGljYXRlcyB0aGF0IHRo
ZSBXZWJQcm9jZXNzIGlzIHVucmVzcG9uc2l2ZSAobGlrZWx5IGR1ZSB0byBhIGhhbmcgY2F1c2Vk
IGJ5IGEKKyAgICAgICAgcHJldmlvdXMgdGVzdCksIHdoaWNoIHByZXZlbnRzIFdlYktpdFRlc3RS
dW5uZXIgdG8gcmVzZXQgdGhlIHN0YXRlIGluIG9yZGVyIHRvIHJ1biB0aGUgdGVzdC4KKworICAg
ICAgICBJIHByb3Bvc2UgdGhhdCBpZiB3ZSBmYWlsIHRvIGxvYWQgYWJvdXQ6Ymxhbmsgb25jZSwg
d2UgbG9nIGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGJ1dCB0aGVuIHRlcm1pbmF0ZQorICAg
ICAgICB0aGUgV2ViUHJvY2VzcyBhbmQgdHJ5IG9uY2UgYWdhaW4sIHRvIG1ha2UgV2ViS2l0VGVz
dFJ1bm5lciBtb3JlIHJvYnVzdC4KKyAgICAgICAgSSBoYXZlIHZlcmlmaWVkIHRoZSBjaGFuZ2Ug
bG9jYWxseSwgYnkgaW5qZWN0aW5nIGEgc2NyaXB0IGluIHJlc2V0U3RhdGVUb0NvbnNpc3RlbnRW
YWx1ZXMoKSB0aGF0IGNhdXNlcworICAgICAgICBhIFdlYlByb2Nlc3MgaGFuZy4gQmVmb3JlIG15
IGNoYW5nZSwgdGhlIHRlc3Qgd291bGQgdGltZSBvdXQgYW5kIHRoZSBzYW1lIGxvZ2dpbmcgYXMg
aW4KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYzNDkzMDc0PiB3b3VsZCBzaG93LiBBZnRlciBt
eSBjaGFuZ2UgdGhvdWdoLCB0aGUgdGVzdCB3b3VsZCBwYXNzIHN1Y2Nlc3NmdWxseSBkZXNwaXRl
IHRoZQorICAgICAgICBXZWJQcm9jZXNzIGhhbmcuCisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVu
bmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdENvbnRyb2xsZXI6OnJl
c2V0U3RhdGVUb0NvbnNpc3RlbnRWYWx1ZXMpOgorCiAyMDIwLTA1LTIyICBQaGlsaXBwZSBOb3Jt
YW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBbRmxhdHBhayBTREtdIEFkZCBi
dWJibGV3cmFwIC4uLiB3cmFwcGVyCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVy
L1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xs
ZXIuY3BwCmluZGV4IGQzOGQ4NTRiNzYwMmRmNzU1Y2M2NzBmYTY0MTI3MTJkOWQxYWIzMGQuLjY3
MTVmZDIyYzhhYTc5OGM2NTMzM2U2YjEzYzUxOTEyYzVmMWQ4NjkgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC0xMTQyLDEyICsxMTQyLDIyIEBAIGJvb2wg
VGVzdENvbnRyb2xsZXI6OnJlc2V0U3RhdGVUb0NvbnNpc3RlbnRWYWx1ZXMoY29uc3QgVGVzdE9w
dGlvbnMmIG9wdGlvbnMsIFJlCiAgICAgbV9zZXJ2ZXJUcnVzdEV2YWx1YXRpb25DYWxsYmFja0Nh
bGxzQ291bnQgPSAwOwogICAgIG1fc2hvdWxkRGlzbWlzc0phdmFTY3JpcHRBbGVydHNBc3luY2hy
b25vdXNseSA9IGZhbHNlOwogCisgICAgYXV0byBsb2FkQWJvdXRCbGFuayA9IFt0aGlzXSB7Cisg
ICAgICAgIG1fZG9uZVJlc2V0dGluZyA9IGZhbHNlOworICAgICAgICBXS1BhZ2VMb2FkVVJMKG1f
bWFpbldlYlZpZXctPnBhZ2UoKSwgYmxhbmtVUkwoKSk7CisgICAgICAgIHJ1blVudGlsKG1fZG9u
ZVJlc2V0dGluZywgbV9jdXJyZW50SW52b2NhdGlvbi0+c2hvcnRUaW1lb3V0KCkpOworICAgICAg
ICByZXR1cm4gbV9kb25lUmVzZXR0aW5nOworICAgIH07CisKICAgICAvLyBSZXNldCBtYWluIHBh
Z2UgYmFjayB0byBhYm91dDpibGFuawotICAgIG1fZG9uZVJlc2V0dGluZyA9IGZhbHNlOwotICAg
IFdLUGFnZUxvYWRVUkwobV9tYWluV2ViVmlldy0+cGFnZSgpLCBibGFua1VSTCgpKTsKLSAgICBy
dW5VbnRpbChtX2RvbmVSZXNldHRpbmcsIG1fY3VycmVudEludm9jYXRpb24tPnNob3J0VGltZW91
dCgpKTsKLSAgICBpZiAoIW1fZG9uZVJlc2V0dGluZykKLSAgICAgICAgcmV0dXJuIGZhbHNlOwor
ICAgIGlmICghbG9hZEFib3V0QmxhbmsoKSkgeworICAgICAgICBXVEZMb2dBbHdheXMoIkZhaWxl
ZCB0byBsb2FkICdhYm91dDpibGFuaycsIHRlcm1pbmF0aW5nIHByb2Nlc3MgYW5kIHRyeWluZyBh
Z2Fpbi4iKTsKKyAgICAgICAgV0tQYWdlVGVybWluYXRlKG1fbWFpbldlYlZpZXctPnBhZ2UoKSk7
CisgICAgICAgIGlmICghbG9hZEFib3V0QmxhbmsoKSkgeworICAgICAgICAgICAgV1RGTG9nQWx3
YXlzKCJGYWlsZWQgdG8gbG9hZCAnYWJvdXQ6YmxhbmsnIGFnYWluIGFmdGVyIHRlcm1pbmF0aW9u
LiIpOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgfQogICAgIAog
ICAgIGlmIChyZXNldFN0YWdlID09IFJlc2V0U3RhZ2U6OkFmdGVyVGVzdCkgewogICAgICAgICB1
cGRhdGVMaXZlRG9jdW1lbnRzQWZ0ZXJUZXN0KCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>