<?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>198450</bug_id>
          
          <creation_ts>2019-05-31 20:59:43 -0700</creation_ts>
          <short_desc>TestWebKitAPI.WKWebView.LocalStorageProcessSuspends is flaky</short_desc>
          <delta_ts>2019-07-29 16:40:52 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=198582</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=200086</see_also>
          <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="Sihui Liu">sihui_liu</reporter>
          <assigned_to name="Sihui Liu">sihui_liu</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>commit-queue</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1540937</commentid>
    <comment_count>0</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-05-31 20:59:43 -0700</bug_when>
    <thetext>We used two WKWebViews in this test, one for setting local storage item and the other for checking that local storage item is correctly set.
The test goes like this:
1. Set item value to be &quot;value&quot; in webView1
2. Suspend network process
3. Set item value to be &quot;newValue&quot; in webView1
4. Get item value from webView2. The value should be &quot;value&quot; because network process cannot notify webView2 about new value during its suspension.
5. Wake up network process
6. Get item value from webView. The value should be &quot;newValue&quot; as network process handles the update and makes notification.

In step 6, we relies on web page of webView2 to send back a message that has the item value. To implement this, we let that web page periodically check the item value and send back a message when it detects the value has changed or *the limit of checks has been reached*.

Because web process is not suspended, it is possible that that web page in webView2 finishes the check and sends a message earlier than step 6. Therefore, we may not get the expected message during the wait in step 6 and the test times out. Also, the message content may be incorrect if the check finishes before network process resumes.

To make the test more robust, we can use storage event instead of the periodic check.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540941</commentid>
    <comment_count>1</comment_count>
      <attachid>371107</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-05-31 21:17:41 -0700</bug_when>
    <thetext>Created attachment 371107
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540942</commentid>
    <comment_count>2</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-05-31 21:19:49 -0700</bug_when>
    <thetext>This was the correct bug for WKWebView.LocalStorageProcessSuspends... I wrongly uploaded the patch to https://bugs.webkit.org/show_bug.cgi?id=198423, which is for WKWebView.LocalStorageProcessCrashes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540944</commentid>
    <comment_count>3</comment_count>
      <attachid>371107</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-31 21:33:09 -0700</bug_when>
    <thetext>Comment on attachment 371107
Patch for landing

Clearing flags on attachment: 371107

Committed r246012: &lt;https://trac.webkit.org/changeset/246012&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540945</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-31 21:33:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540946</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-05-31 21:34:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/51325191&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555393</commentid>
    <comment_count>6</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-07-24 10:14:18 -0700</bug_when>
    <thetext>The test still seems to be flaky, filed https://bugs.webkit.org/show_bug.cgi?id=200086

Also curious, is there a particular reason to not run the patch through EWS? This seems especially important when fixing a test, which is covered by EWS.

(The patch was uploaded to bugzilla and marked cq+ directly. Note that EWS automatically runs on patches with r? flag, and can be manually invoked by pressing &apos;Submit to new EWS&apos; button)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556811</commentid>
    <comment_count>7</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-07-29 16:40:52 -0700</bug_when>
    <thetext>(In reply to Aakash Jain from comment #6)
&gt; The test still seems to be flaky, filed
&gt; https://bugs.webkit.org/show_bug.cgi?id=200086
&gt; 
&gt; Also curious, is there a particular reason to not run the patch through EWS?
&gt; This seems especially important when fixing a test, which is covered by EWS.
&gt; 
&gt; (The patch was uploaded to bugzilla and marked cq+ directly. Note that EWS
&gt; automatically runs on patches with r? flag, and can be manually invoked by
&gt; pressing &apos;Submit to new EWS&apos; button)

This was run on EWS. See comments above, I wrongly uploaded the patch to https://bugs.webkit.org/show_bug.cgi?id=198423 (patch at https://bugs.webkit.org/attachment.cgi?id=371087&amp;action=review), it got reviewed there.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>371107</attachid>
            <date>2019-05-31 21:17:41 -0700</date>
            <delta_ts>2019-05-31 21:33:09 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-198450-20190531211741.patch</filename>
            <type>text/plain</type>
            <size>4092</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2MDEwCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2RlNDdiNTI2M2Y2YTI1ZGU0OTFhNzg3ZGQ1MTRjYmM3
Y2I5YmY0MS4uMjg4MzQ5MDMzY2VlYzcyOGJkY2QyYjI4ZDkyMjcyNTQ5ZTBjNjc0YyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIz
IEBACisyMDE5LTA1LTMxICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAg
ICAgIFRlc3RXZWJLaXRBUEkuV0tXZWJWaWV3LkxvY2FsU3RvcmFnZVByb2Nlc3NTdXNwZW5kcyBp
cyBmbGFreQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTk4NDUwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisgICAgICAgIElu
IGxvY2FsLXN0b3JhZ2UtcHJvY2Vzcy1zdXNwZW5kcy0yLmh0bWwsIHdlIHBlcmlvZGljYWxseSBj
aGVja2VkIGxvY2FsIHN0b3JhZ2UgaXRlbSBhbmQgc2VudCBhIG1lc3NhZ2Ugd2hlbiB0aGUKKyAg
ICAgICAgaXRlbSB2YWx1ZSB3YXMgY2hhbmdlZCBvciB0aW1lcyBvZiBjaGVjayByZWFjaGVkIGxp
bWl0LiBXZSBleHBlY3RlZCB0aGUgbWVzc2FnZSB0byBiZSBzZW50IGFmdGVyIG5ldHdvcmsgcHJv
Y2VzcworICAgICAgICByZXN1bWVkIGZyb20gc3VzcGVuc2lvbiwgYmVjYXVzZSB0aGF0J3Mgd2hl
biB0aGUgaXRlbSB2YWx1ZSBzaG91bGQgZ2V0IHVwZGF0ZWQuIEhvd2V2ZXIsIHRoZSBsaW1pdCB3
ZSBzZXQgc2VlbWVkCisgICAgICAgIHRvIGJlIG5vdCBoaWdoIGVub3VnaCwgc28gdGhhdCB0aGUg
bWVzc2FnZSBjb3VsZCBiZSBzZW50IGVhcmlsZXIgdGhhbiBleHBlY3RlZCwgd2hlbiBsaW1pdCBv
ZiBjaGVjayBudW1iZXIgd2FzIAorICAgICAgICByZWFjaGVkLgorCisgICAgICAgIFdlIGNhbiBz
b2x2ZSB0aGlzIGluIGRpZmZlcmVudCB3YXlzLiBUbyBtYWtlIHRoZSB0ZXN0IHJvYnVzdCwgd2Ug
Y2FuIHNlbmQgdGhlIG1lc3NhZ2Ugb24gYSBzdG9yYWdlIGV2ZW50LCB3aGljaAorICAgICAgICBu
b3RpZmllcyBhYm91dCBjaGFuZ2VzIGluIGxvY2FsIHN0b3JhZ2UuCisKKyAgICAgICAgKiBUZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0xvY2FsU3RvcmFnZVBlcnNpc3RlbmNlLm1tOgor
ICAgICAgICAoVEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9sb2NhbC1zdG9yYWdlLXByb2Nlc3Mtc3VzcGVuZHMtMi5odG1sOgorCiAyMDE5LTA1LTMxICBS
eW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIERyYWdBbmREcm9wVGVz
dHMuRHJhZ0ltYWdlTG9jYXRpb25Gb3JMaW5rSW5TdWJmcmFtZSBmYWlscyBvbiBzb21lIGlQYWQK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTG9jYWxT
dG9yYWdlUGVyc2lzdGVuY2UubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL0xvY2FsU3RvcmFnZVBlcnNpc3RlbmNlLm1tCmluZGV4IDFiYzc4ZDcxOTQ5YmE5NzI0MTE2
YmNmZDcyNmVjYTM1YjY2YTNhZTIuLjNkYjE3M2Y4ODJiMmE5Y2QzMjk0YjMxNjkwOTE3NmMzMWJi
MDRjYzUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
TG9jYWxTdG9yYWdlUGVyc2lzdGVuY2UubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9Mb2NhbFN0b3JhZ2VQZXJzaXN0ZW5jZS5tbQpAQCAtMTExLDYgKzExMSw3
IEBAIFRFU1QoV0tXZWJWaWV3LCBMb2NhbFN0b3JhZ2VQcm9jZXNzU3VzcGVuZHMpCiAgICAgW1tj
b25maWd1cmF0aW9uIHVzZXJDb250ZW50Q29udHJvbGxlcl0gYWRkU2NyaXB0TWVzc2FnZUhhbmRs
ZXI6aGFuZGxlci5nZXQoKSBuYW1lOkAidGVzdEhhbmRsZXIiXTsKICAgICBSZXRhaW5QdHI8V0tQ
cm9jZXNzUG9vbD4gcHJvY2Vzc1Bvb2wgPSBhZG9wdE5TKFtbV0tQcm9jZXNzUG9vbCBhbGxvY10g
aW5pdF0pOwogICAgIFtjb25maWd1cmF0aW9uIHNldFByb2Nlc3NQb29sOnByb2Nlc3NQb29sLmdl
dCgpXTsKKyAgICBbY29uZmlndXJhdGlvbiBfc2V0QWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmls
ZVVSTHM6WUVTXTsKIAogICAgIFJldGFpblB0cjxXS1dlYlZpZXc+IHdlYlZpZXcxID0gYWRvcHRO
UyhbW1dLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwg
NjAwKSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCldKTsKICAgICBOU1VSTFJlcXVl
c3QgKnJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltbTlNCdW5kbGUgbWFp
bkJ1bmRsZV0gVVJMRm9yUmVzb3VyY2U6QCJsb2NhbC1zdG9yYWdlLXByb2Nlc3Mtc3VzcGVuZHMt
MSIgd2l0aEV4dGVuc2lvbjpAImh0bWwiIHN1YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEkucmVz
b3VyY2VzIl1dOwpAQCAtMTM4LDcgKzEzOSw3IEBAIFRFU1QoV0tXZWJWaWV3LCBMb2NhbFN0b3Jh
Z2VQcm9jZXNzU3VzcGVuZHMpCiAgICAgCiAgICAgcmVhZHlUb0NvbnRpbnVlID0gZmFsc2U7CiAg
ICAgW3dlYlZpZXcyIGV2YWx1YXRlSmF2YVNjcmlwdDpAIndpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0
SXRlbSgna2V5JykiIGNvbXBsZXRpb25IYW5kbGVyOl4oaWQgcmVzdWx0LCBOU0Vycm9yICopIHsK
LSAgICAgICAgRVhQRUNUX1RSVUUoW0AidmFsdWUiIGlzRXF1YWxUb1N0cmluZzpyZXN1bHRdKTsK
KyAgICAgICAgRVhQRUNUX1dLX1NUUkVRKEAidmFsdWUiLCByZXN1bHQpOwogICAgICAgICByZWFk
eVRvQ29udGludWUgPSB0cnVlOwogICAgIH1dOwogICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1
bigmcmVhZHlUb0NvbnRpbnVlKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvbG9jYWwtc3RvcmFnZS1wcm9jZXNzLXN1c3BlbmRzLTIuaHRtbCBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvbG9jYWwtc3RvcmFnZS1wcm9jZXNz
LXN1c3BlbmRzLTIuaHRtbAppbmRleCBkM2EyNzY0ZDZlMzRmOWZhNDVlMmRkMTY5ZTY5YTQwY2Y1
NTE4OWNiLi42YmEyNWQxMDNkYmU3MTE4MGE1OWM2MjQ1OThmYjkzMWJhZDExZDU2IDEwMDY0NAot
LS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL2xvY2FsLXN0b3JhZ2Ut
cHJvY2Vzcy1zdXNwZW5kcy0yLmh0bWwKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9sb2NhbC1zdG9yYWdlLXByb2Nlc3Mtc3VzcGVuZHMtMi5odG1sCkBAIC0xLDE3
ICsxLDExIEBACiA8IURPQ1RZUEUgaHRtbD4KIDxzY3JpcHQ+CiAKLXZhciBzdGFydFZhbHVlID0g
d2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKCdrZXknKTsKLXdpbmRvdy53ZWJraXQubWVzc2Fn
ZUhhbmRsZXJzLnRlc3RIYW5kbGVyLnBvc3RNZXNzYWdlKHN0YXJ0VmFsdWUpOworZnVuY3Rpb24g
Y2hlY2tMb2NhbFN0b3JhZ2UoZXZlbnQpIHsKKyAgICB3aW5kb3cud2Via2l0Lm1lc3NhZ2VIYW5k
bGVycy50ZXN0SGFuZGxlci5wb3N0TWVzc2FnZSh3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0o
J2tleScpKTsKK30KIAotdmFyIHRyaWVzID0gMTA7Ci12YXIgaW50ZXJ2YWxJRCA9IHNldEludGVy
dmFsKCgpPT4gewotICAgIHZhciBuZXdWYWx1ZSA9IHdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRl
bSgna2V5Jyk7Ci0gICAgaWYgKG5ld1ZhbHVlICE9IHN0YXJ0VmFsdWUgfHwgdHJpZXMgPT0gMCkg
ewotICAgICAgICB3aW5kb3cud2Via2l0Lm1lc3NhZ2VIYW5kbGVycy50ZXN0SGFuZGxlci5wb3N0
TWVzc2FnZShuZXdWYWx1ZSk7Ci0gICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWxJRCk7Ci0g
ICAgfQotICAgIC0tdHJpZXM7Ci19LCAxMDApOworY2hlY2tMb2NhbFN0b3JhZ2UoKTsKK3dpbmRv
dy5hZGRFdmVudExpc3RlbmVyKCJzdG9yYWdlIiwgY2hlY2tMb2NhbFN0b3JhZ2UpOwogCi08L3Nj
cmlwdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L3NjcmlwdD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>