<?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>125885</bug_id>
          
          <creation_ts>2013-12-17 16:39:10 -0800</creation_ts>
          <short_desc>Botwatcher&apos;s dashboard ceases to update itself after a while</short_desc>
          <delta_ts>2013-12-18 09:42:15 -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>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>mrowe</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>960728</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-12-17 16:39:10 -0800</bug_when>
    <thetext>&lt;http://trac.webkit.org/changeset/159659&gt; switched from setInterval to setTimeout, and the code now assumes that _updateQueues is called too early if and only if it&apos;s because a platform was unhidden.

But looks like JS timers can now fire too early sometimes, in which case we never re-schedule the timeout, and the view becomes dead forever.

I&apos;m not quite sure when this happens. This could legitimately happen due to NTP adjustment, or there may be a bug with timer coalescing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960730</commentid>
    <comment_count>1</comment_count>
      <attachid>219471</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-12-17 16:41:16 -0800</bug_when>
    <thetext>Created attachment 219471
test case for timeout failure

For future reference, this is a standalone test that shows how current dashboard update code fails. I can easily reproduce this by keeping the test open for a few minutes (and if there are multiple instances open, they always fail simultaneously). I&apos;m testing on Mavericks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960734</commentid>
    <comment_count>2</comment_count>
      <attachid>219474</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-12-17 16:46:26 -0800</bug_when>
    <thetext>Created attachment 219474
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960801</commentid>
    <comment_count>3</comment_count>
      <attachid>219474</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-12-17 19:22:36 -0800</bug_when>
    <thetext>Comment on attachment 219474
proposed fix

Clearing flags on attachment: 219474

Committed r160744: &lt;http://trac.webkit.org/changeset/160744&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960802</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-12-17 19:22:38 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960961</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-12-18 09:42:15 -0800</bug_when>
    <thetext>Note that this removes the behavior of immediately fetching when showing a previously hidden view. Maybe we should restore this, but we need to look carefully into the possibility of two updates running simultaneously, and what consequences that would have.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>219471</attachid>
            <date>2013-12-17 16:41:16 -0800</date>
            <delta_ts>2013-12-17 16:41:16 -0800</delta_ts>
            <desc>test case for timeout failure</desc>
            <filename>timeout.html</filename>
            <type>text/plain</type>
            <size>336</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">PHNjcmlwdD4KCnZhciBsYXN0VXBkYXRlID0gMDsKdmFyIHVwZGF0ZUludGVydmFsID0gNDUwMDA7
CgpmdW5jdGlvbiBmKCkKewogICAgdmFyIG5vdyA9IERhdGUubm93KCk7CiAgICBpZiAobm93IC0g
bGFzdFVwZGF0ZSA8IHVwZGF0ZUludGVydmFsKSB7CiAgICAgICAgYWxlcnQoIk9PUFMsIHRpbWVy
IGZpcmVkIHRvbyBlYXJseTogIiArIChub3cgLSBsYXN0VXBkYXRlKSk7CiAgICAgICAgcmV0dXJu
OwogICAgfQogICAgbGFzdFVwZGF0ZSA9IG5vdzsKICAgIHNldFRpbWVvdXQoZiwgdXBkYXRlSW50
ZXJ2YWwpOwp9CnNldFRpbWVvdXQoZiwgdXBkYXRlSW50ZXJ2YWwpOwo8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>219474</attachid>
            <date>2013-12-17 16:46:26 -0800</date>
            <delta_ts>2013-12-17 19:22:36 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>DashboardTimeout.txt</filename>
            <type>text/plain</type>
            <size>4725</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE2MDczNikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE5IEBACisyMDEzLTEyLTE3ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29t
PgorCisgICAgICAgIEJvdHdhdGNoZXIncyBkYXNoYm9hcmQgY2Vhc2VzIHRvIHVwZGF0ZSBpdHNl
bGYgYWZ0ZXIgYSB3aGlsZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTI1ODg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJs
aWNfaHRtbC9kYXNoYm9hcmQvU2NyaXB0cy9CdWlsZGJvdFF1ZXVlLmpzOgorICAgICAgICBSZW1v
dmVkIGNvZGUgdGhhdCBjaGVja2VkIGZvciB0aGUgdmlldyBiZWluZyBoaWRkZW4uIEl0J3Mgbm9u
ZSBvZiBtb2RlbCdzIGJ1c2luZXNzLgorCisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvYnVp
bGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvZGFzaGJvYXJkL1NjcmlwdHMvQnVpbGRi
b3RRdWV1ZVZpZXcuanM6CisgICAgICAgIChCdWlsZGJvdFF1ZXVlVmlldyk6IEZpbmQgb3V0IHdo
YXQgcGxhdGZvcm0gdGhlIHZpZXcgaXMgZm9yLiBJbml0bGlhbGl6ZSB1cGRhdGUgdGltZXIuCisg
ICAgICAgIChCdWlsZGJvdFF1ZXVlVmlldy5wcm90b3R5cGUuX3VwZGF0ZUhpZGRlblN0YXRlKTog
U3RhcnQgb3Igc3RvcCB1cGRhdGUgdGltZXIgYXMgYXBwcm9wcmlhdGUuCisgICAgICAgIFdlIG5v
dyBzdG9wIHRoZSB0aW1lciBmb3IgaGlkZGVuIHZpZXdzLgorICAgICAgICAoQnVpbGRib3RRdWV1
ZVZpZXcucHJvdG90eXBlLl91cGRhdGVRdWV1ZXMpOiBSZW1vdmVkIHRoZSBsb2dpYyBmb3IgaWdu
b3Jpbmcgc29tZSB1cGRhdGVzLgorCiAyMDEzLTEyLTE3ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRl
cnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgR2l2ZSB0aGUgTWluaUJyb3dzZXIgYSBidW5kbGUK
SW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1
YmxpY19odG1sL2Rhc2hib2FyZC9TY3JpcHRzL0J1aWxkYm90UXVldWUuanMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGlj
X2h0bWwvZGFzaGJvYXJkL1NjcmlwdHMvQnVpbGRib3RRdWV1ZS5qcwkocmV2aXNpb24gMTYwNzIw
KQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVi
bGljX2h0bWwvZGFzaGJvYXJkL1NjcmlwdHMvQnVpbGRib3RRdWV1ZS5qcwkod29ya2luZyBjb3B5
KQpAQCAtMTMxLDEwICsxMzEsNiBAQCBCdWlsZGJvdFF1ZXVlLnByb3RvdHlwZSA9IHsKIAogICAg
IHVwZGF0ZTogZnVuY3Rpb24oaXRlcmF0aW9uc1RvTG9hZCkKICAgICB7Ci0gICAgICAgIHZhciBo
aWRkZW5QbGF0Zm9ybXMgPSBzZXR0aW5ncy5nZXRPYmplY3QoImhpZGRlblBsYXRmb3JtcyIpOwot
ICAgICAgICBpZiAoaGlkZGVuUGxhdGZvcm1zICYmIGhpZGRlblBsYXRmb3Jtcy5jb250YWlucyh0
aGlzLnBsYXRmb3JtKSkKLSAgICAgICAgICAgIHJldHVybjsKLQogICAgICAgICBKU09OLmxvYWQo
dGhpcy5iYXNlVVJMLCBmdW5jdGlvbihkYXRhKSB7CiAgICAgICAgICAgICBpZiAoIShkYXRhLmNh
Y2hlZEJ1aWxkcyBpbnN0YW5jZW9mIEFycmF5KSkKICAgICAgICAgICAgICAgICByZXR1cm47Cklu
ZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJs
aWNfaHRtbC9kYXNoYm9hcmQvU2NyaXB0cy9CdWlsZGJvdFF1ZXVlVmlldy5qcwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJs
aWNfaHRtbC9kYXNoYm9hcmQvU2NyaXB0cy9CdWlsZGJvdFF1ZXVlVmlldy5qcwkocmV2aXNpb24g
MTYwNzIwKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvcHVibGljX2h0bWwvZGFzaGJvYXJkL1NjcmlwdHMvQnVpbGRib3RRdWV1ZVZpZXcuanMJKHdv
cmtpbmcgY29weSkKQEAgLTM1LDE2ICszNSwyNCBAQCBCdWlsZGJvdFF1ZXVlVmlldyA9IGZ1bmN0
aW9uKGRlYnVnUXVldWVzCiAgICAgdGhpcy5lbGVtZW50Ll9fcXVldWVWaWV3ID0gdGhpczsKIAog
ICAgIHRoaXMucmVsZWFzZVF1ZXVlcy5mb3JFYWNoKGZ1bmN0aW9uKHF1ZXVlKSB7CisgICAgICAg
IGlmICh0aGlzLnBsYXRmb3JtICYmIHRoaXMucGxhdGZvcm0gIT0gcXVldWUucGxhdGZvcm0pCisg
ICAgICAgICAgICB0aHJvdyAiQSBidWlsZGJvdCB2aWV3IG1heSBub3QgY29udGFpbiBxdWV1ZXMg
Zm9yIG11bHRpcGxlIHBsYXRmb3Jtcy4iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHRoaXMu
cGxhdGZvcm0gPSBxdWV1ZS5wbGF0Zm9ybTsKICAgICAgICAgcXVldWUuYWRkRXZlbnRMaXN0ZW5l
cihCdWlsZGJvdFF1ZXVlLkV2ZW50Lkl0ZXJhdGlvbnNBZGRlZCwgdGhpcy5fcXVldWVJdGVyYXRp
b25zQWRkZWQsIHRoaXMpOwogICAgIH0uYmluZCh0aGlzKSk7CiAKICAgICB0aGlzLmRlYnVnUXVl
dWVzLmZvckVhY2goZnVuY3Rpb24ocXVldWUpIHsKKyAgICAgICAgaWYgKHRoaXMucGxhdGZvcm0g
JiYgdGhpcy5wbGF0Zm9ybSAhPSBxdWV1ZS5wbGF0Zm9ybSkKKyAgICAgICAgICAgIHRocm93ICJB
IGJ1aWxkYm90IHZpZXcgbWF5IG5vdCBjb250YWluIHF1ZXVlcyBmb3IgbXVsdGlwbGUgcGxhdGZv
cm1zLiIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdGhpcy5wbGF0Zm9ybSA9IHF1ZXVlLnBs
YXRmb3JtOwogICAgICAgICBxdWV1ZS5hZGRFdmVudExpc3RlbmVyKEJ1aWxkYm90UXVldWUuRXZl
bnQuSXRlcmF0aW9uc0FkZGVkLCB0aGlzLl9xdWV1ZUl0ZXJhdGlvbnNBZGRlZCwgdGhpcyk7CiAg
ICAgfS5iaW5kKHRoaXMpKTsKIAotICAgIHRoaXMubGFzdFVwZGF0ZSA9IDA7Ci0gICAgc2V0VGlt
ZW91dCh0aGlzLl91cGRhdGVRdWV1ZXMuYmluZCh0aGlzKSwgQnVpbGRib3RRdWV1ZVZpZXcuVXBk
YXRlSW50ZXJ2YWwpOwotICAgIHNldHRpbmdzLmFkZFNldHRpbmdMaXN0ZW5lcigiaGlkZGVuUGxh
dGZvcm1zIiwgdGhpcy5fdXBkYXRlUXVldWVzLmJpbmQodGhpcykpOworICAgIHRoaXMudXBkYXRl
VGltZXIgPSBudWxsOworICAgIHRoaXMuX3VwZGF0ZUhpZGRlblN0YXRlKCk7CisgICAgc2V0dGlu
Z3MuYWRkU2V0dGluZ0xpc3RlbmVyKCJoaWRkZW5QbGF0Zm9ybXMiLCB0aGlzLl91cGRhdGVIaWRk
ZW5TdGF0ZS5iaW5kKHRoaXMpKTsKIH07CiAKIEJhc2VPYmplY3QuYWRkQ29uc3RydWN0b3JGdW5j
dGlvbnMoQnVpbGRib3RRdWV1ZVZpZXcpOwpAQCAtMTA1LDE1ICsxMTMsMjQgQEAgQnVpbGRib3RR
dWV1ZVZpZXcucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gZnJhZ21lbnQ7CiAgICAgfSwK
IAorICAgIF91cGRhdGVIaWRkZW5TdGF0ZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdmFy
IGhpZGRlblBsYXRmb3JtcyA9IHNldHRpbmdzLmdldE9iamVjdCgiaGlkZGVuUGxhdGZvcm1zIik7
CisgICAgICAgIHZhciB3YXNIaWRkZW4gPSAhdGhpcy51cGRhdGVUaW1lcjsKKyAgICAgICAgdmFy
IGlzSGlkZGVuID0gaGlkZGVuUGxhdGZvcm1zICYmIGhpZGRlblBsYXRmb3Jtcy5jb250YWlucyh0
aGlzLnBsYXRmb3JtKTsKKworICAgICAgICBpZiAod2FzSGlkZGVuICYmICFpc0hpZGRlbikKKyAg
ICAgICAgICAgIHRoaXMudXBkYXRlVGltZXIgPSBzZXRJbnRlcnZhbCh0aGlzLl91cGRhdGVRdWV1
ZXMuYmluZCh0aGlzKSwgQnVpbGRib3RRdWV1ZVZpZXcuVXBkYXRlSW50ZXJ2YWwpOworICAgICAg
ICBlbHNlIGlmICghd2FzSGlkZGVuICYmIGlzSGlkZGVuKSB7CisgICAgICAgICAgICBjbGVhcklu
dGVydmFsKHRoaXMudXBkYXRlVGltZXIpOworICAgICAgICAgICAgdGhpcy51cGRhdGVUaW1lciA9
IG51bGw7CisgICAgICAgIH0KKyAgICB9LAorCiAgICAgX3VwZGF0ZVF1ZXVlczogZnVuY3Rpb24o
KQogICAgIHsKLSAgICAgICAgdmFyIG5vdyA9IERhdGUubm93KCk7Ci0gICAgICAgIGlmIChub3cg
LSB0aGlzLmxhc3RVcGRhdGUgPCBCdWlsZGJvdFF1ZXVlVmlldy5VcGRhdGVJbnRlcnZhbCkKLSAg
ICAgICAgICAgIHJldHVybjsKICAgICAgICAgdGhpcy5yZWxlYXNlUXVldWVzLmZvckVhY2goZnVu
Y3Rpb24ocXVldWUpIHsgcXVldWUudXBkYXRlKCk7IH0pOwogICAgICAgICB0aGlzLmRlYnVnUXVl
dWVzLmZvckVhY2goZnVuY3Rpb24ocXVldWUpIHsgcXVldWUudXBkYXRlKCk7IH0pOwotICAgICAg
ICB0aGlzLmxhc3RVcGRhdGUgPSBub3c7Ci0gICAgICAgIHNldFRpbWVvdXQodGhpcy5fdXBkYXRl
UXVldWVzLmJpbmQodGhpcyksIEJ1aWxkYm90UXVldWVWaWV3LlVwZGF0ZUludGVydmFsKTsKICAg
ICB9LAogCiAgICAgX3F1ZXVlSXRlcmF0aW9uc0FkZGVkOiBmdW5jdGlvbihldmVudCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>