<?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>23349</bug_id>
          
          <creation_ts>2009-01-15 07:27:32 -0800</creation_ts>
          <short_desc>Don&apos;t store obsolete caches in disk storage</short_desc>
          <delta_ts>2009-01-15 23:44:39 -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>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>105892</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-01-15 07:27:32 -0800</bug_when>
    <thetext>We only need to store the newest cache for each group in disk cache. Currently, non-newest caches are removed after being destroyed in memory, but this leaves the database with too much data. This obsolete data won&apos;t ever be removed if the browser crashes in between.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105894</commentid>
    <comment_count>1</comment_count>
      <attachid>26757</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-01-15 07:36:14 -0800</bug_when>
    <thetext>Created attachment 26757
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105965</commentid>
    <comment_count>2</comment_count>
      <attachid>26757</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2009-01-15 14:40:53 -0800</bug_when>
    <thetext>Comment on attachment 26757
proposed patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>106035</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-01-15 23:44:39 -0800</bug_when>
    <thetext>Committed revision 39962.

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26757</attachid>
            <date>2009-01-15 07:36:14 -0800</date>
            <delta_ts>2009-01-15 14:40:53 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>RemoveOldCachesEarlier.txt</filename>
            <type>text/plain</type>
            <size>5912</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTkzMykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzAgQEAKKzIwMDktMDEtMTUgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJr
aXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzM0OQorICAgICAgICBE
b24ndCBzdG9yZSBvYnNvbGV0ZSBjYWNoZXMgaW4gZGlzayBzdG9yYWdlCisKKyAgICAgICAgKiBs
b2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXI6OlJlc291cmNlTG9hZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjps
b2FkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyOjpzY2hlZHVsZUxvYWRGYWxs
YmFja1Jlc291cmNlRnJvbUFwcGxpY2F0aW9uQ2FjaGUpOgorICAgICAgICAqIGxvYWRlci9SZXNv
dXJjZUxvYWRlci5oOgorICAgICAgICBEb24ndCBtYWludGFpbiBtX3dhc0xvYWRlZEZyb21BcHBs
aWNhdGlvbkNhY2hlLCB3aGljaCB3YXMgbmV2ZXIgdXNlZC4KKworICAgICAgICAqIGxvYWRlci9h
cHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlLmNwcDogKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGU6
OmFkZFJlc291cmNlKToKKyAgICAgICAgQXNzZXJ0IHRoYXQgb25seSBpbXBsaWNpdCBhbmQgZHlu
YW1pYyByZXNvdXJjZXMgY2FuIGJlIGFkZGVkIGFmdGVyIHRoZSBjYWNoZSBoYXMgYmVlbiBmdWxs
eQorICAgICAgICBsb2FkZWQgYW5kIHN0b3JlZCB0byBkaXNrIGRhdGFiYXNlLgorCisgICAgICAg
ICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveWVkKTogRG9uJ3QgcmVt
b3ZlIG5vbi1uZXdlc3QgY2FjaGVzIGZyb20gZGlzaworICAgICAgICBkYXRhYmFzZSwgYXMgdGhp
cyBpcyBub3cgZG9uZSB3aGVuZXZlciB0aGUgY2FjaGUgYmVjb21lcyBvYnNvbGV0ZS4KKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c2V0TmV3ZXN0Q2FjaGUpOiBSZW1v
dmUgYW4gb2Jzb2xldGUgY2FjaGUgZnJvbSBkaXNrIHN0b3JhZ2UuCisKKyAgICAgICAgKiBsb2Fk
ZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwOiAoV2ViQ29yZTo6QXBwbGlj
YXRpb25DYWNoZVN0b3JhZ2U6OmNhY2hlR3JvdXBEZXN0cm95ZWQpOgorICAgICAgICBBIGNhY2hl
IGdyb3VwIHRoYXQgaGFzIG5ldmVyIGJlZW4gc2F2ZWQgc2hvdWxkIG5vdCBiZSByZW1lbWJlcmVk
IGluIG1fY2FjaGVIb3N0U2V0LiBDaGFuZ2VkCisgICAgICAgIHRoZSBjaGVjayB0byBubyBsb25n
ZXIgcmVseSBvbiBzYXZlZE5ld2VzdENhY2hlUG9pbnRlci4KKwogMjAwOS0wMS0xNSAgRGFyaW4g
RmlzaGVyICA8ZGFyaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMg
U2VpZGVsLgpJbmRleDogV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAkocmV2aXNpb24gMzk5MzIp
CisrKyBXZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTY0LDkgKzY0LDYgQEAgUmVzb3VyY2VMb2FkZXI6OlJlc291cmNlTG9hZGVyKEZyYW1lKiBmcgog
ICAgICwgbV9zaG91bGRDb250ZW50U25pZmYoc2hvdWxkQ29udGVudFNuaWZmKQogICAgICwgbV9z
aG91bGRCdWZmZXJEYXRhKHRydWUpCiAgICAgLCBtX2RlZmVyc0xvYWRpbmcoZnJhbWUtPnBhZ2Uo
KS0+ZGVmZXJzTG9hZGluZygpKQotI2lmIEVOQUJMRShPRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMp
Ci0gICAgLCBtX3dhc0xvYWRlZEZyb21BcHBsaWNhdGlvbkNhY2hlKGZhbHNlKQotI2VuZGlmCiB7
CiB9CiAKQEAgLTEyMiwxMCArMTE5LDggQEAgYm9vbCBSZXNvdXJjZUxvYWRlcjo6bG9hZChjb25z
dCBSZXNvdXJjZQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAKICNpZiBFTkFCTEUoT0ZGTElO
RV9XRUJfQVBQTElDQVRJT05TKQotICAgIGlmIChtX2RvY3VtZW50TG9hZGVyLT5zY2hlZHVsZUFw
cGxpY2F0aW9uQ2FjaGVMb2FkKHRoaXMsIGNsaWVudFJlcXVlc3QsIHIudXJsKCkpKSB7Ci0gICAg
ICAgIG1fd2FzTG9hZGVkRnJvbUFwcGxpY2F0aW9uQ2FjaGUgPSB0cnVlOworICAgIGlmIChtX2Rv
Y3VtZW50TG9hZGVyLT5zY2hlZHVsZUFwcGxpY2F0aW9uQ2FjaGVMb2FkKHRoaXMsIGNsaWVudFJl
cXVlc3QsIHIudXJsKCkpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9CiAjZW5kaWYKIAog
ICAgIGlmIChtX2RlZmVyc0xvYWRpbmcpIHsKQEAgLTIwMCw3ICsxOTUsNiBAQCBib29sIFJlc291
cmNlTG9hZGVyOjpzY2hlZHVsZUxvYWRGYWxsYmFjCiB7CiAgICAgaWYgKGRvY3VtZW50TG9hZGVy
KCktPnNjaGVkdWxlTG9hZEZhbGxiYWNrUmVzb3VyY2VGcm9tQXBwbGljYXRpb25DYWNoZSh0aGlz
LCBtX3JlcXVlc3QsIGNhY2hlKSkgewogICAgICAgICBoYW5kbGUoKS0+Y2FuY2VsKCk7Ci0gICAg
ICAgIG1fd2FzTG9hZGVkRnJvbUFwcGxpY2F0aW9uQ2FjaGUgPSB0cnVlOwogICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICB9CiAgICAgcmV0dXJuIGZhbHNlOwpJbmRleDogV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VMb2FkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxv
YWRlci5oCShyZXZpc2lvbiAzOTkzMikKKysrIFdlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVy
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE0Niw5ICsxNDYsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIGJvb2wgbV9zaG91bGRDb250ZW50U25pZmY7CiAgICAgICAgIGJvb2wgbV9zaG91
bGRCdWZmZXJEYXRhOwogICAgICAgICBib29sIG1fZGVmZXJzTG9hZGluZzsKLSNpZiBFTkFCTEUo
T0ZGTElORV9XRUJfQVBQTElDQVRJT05TKQotICAgICAgICBib29sIG1fd2FzTG9hZGVkRnJvbUFw
cGxpY2F0aW9uQ2FjaGU7Ci0jZW5kaWYKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IG1fZGVmZXJy
ZWRSZXF1ZXN0OwogICAgIH07CiAKSW5kZXg6IFdlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxp
Y2F0aW9uQ2FjaGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0Fw
cGxpY2F0aW9uQ2FjaGUuY3BwCShyZXZpc2lvbiAzOTkzMikKKysrIFdlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Niw2ICs3Niw3
IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZTo6YWRkUmVzb3VyY2UoUGFzc1IKICAgICAKICAgICBp
ZiAobV9zdG9yYWdlSUQpIHsKICAgICAgICAgQVNTRVJUKCFyZXNvdXJjZS0+c3RvcmFnZUlEKCkp
OworICAgICAgICBBU1NFUlQocmVzb3VyY2UtPnR5cGUoKSAmIChBcHBsaWNhdGlvbkNhY2hlUmVz
b3VyY2U6OkR5bmFtaWMgfCBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OkltcGxpY2l0KSk7CiAg
ICAgICAgIAogICAgICAgICAvLyBBZGQgdGhlIHJlc291cmNlIHRvIHRoZSBzdG9yYWdlLgogICAg
ICAgICBjYWNoZVN0b3JhZ2UoKS5zdG9yZShyZXNvdXJjZS5nZXQoKSwgdGhpcyk7CkluZGV4OiBX
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAJ
KHJldmlzaW9uIDM5OTMyKQorKysgV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25D
YWNoZUdyb3VwLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzA1LDExICszMDUsMTAgQEAgdm9pZCBB
cHBsaWNhdGlvbkNhY2hlR3JvdXA6OmNhY2hlRGVzdHJveQogICAgIEFTU0VSVChtX2NhY2hlcy5j
b250YWlucyhjYWNoZSkpOwogICAgIAogICAgIG1fY2FjaGVzLnJlbW92ZShjYWNoZSk7Ci0gICAg
Ci0gICAgaWYgKGNhY2hlICE9IG1fc2F2ZWROZXdlc3RDYWNoZVBvaW50ZXIpCi0gICAgICAgIGNh
Y2hlU3RvcmFnZSgpLnJlbW92ZShjYWNoZSk7CiAKLSAgICAvLyBGSVhNRTogV2hlbiB0aGUgbmV3
ZXN0IGNhY2hlIGlzIGRlc3Ryb3llZCwgd2UnZCByYXRoZXIgY2xlYXIgbV9zYXZlZE5ld2VzdENh
Y2hlUG9pbnRlciB0byBhdm9pZCBoYXZpbmcgYSBoYW5naW5nIHJlZmVyZW5jZSAtIGJ1dCBjdXJy
ZW50bHksIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlIGNoZWNrcyB0aGUgdmFsdWUgYXMgYSBmbGFn
LgorICAgIC8vIElmIG5vIG9uZSBob2xkcyBhIHJlZmVyZW5jZSB0byB0aGUgbmV3ZXN0IGNhY2hl
LCB0aGVuIHRoZSBjYWNoZSBncm91cCB3b24ndCBiZSByZXZpdmVkLgorICAgIGlmIChjYWNoZSA9
PSBtX3NhdmVkTmV3ZXN0Q2FjaGVQb2ludGVyKQorICAgICAgICBtX3NhdmVkTmV3ZXN0Q2FjaGVQ
b2ludGVyID0gMDsKIAogICAgIGlmIChtX2NhY2hlcy5pc0VtcHR5KCkpCiAgICAgICAgIGRlbGV0
ZSB0aGlzOwpAQCAtMzIwLDYgKzMxOSwxMSBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6
c2V0TmV3ZXN0Q2FjCiAgICAgQVNTRVJUKCFtX2NhY2hlcy5jb250YWlucyhuZXdlc3RDYWNoZS5n
ZXQoKSkpOwogICAgIEFTU0VSVCghbmV3ZXN0Q2FjaGUtPmdyb3VwKCkpOwogCisgICAgaWYgKG1f
bmV3ZXN0Q2FjaGUpIHsKKyAgICAgICAgY2FjaGVTdG9yYWdlKCkucmVtb3ZlKG1fbmV3ZXN0Q2Fj
aGUuZ2V0KCkpOworICAgICAgICBtX25ld2VzdENhY2hlLT5jbGVhclN0b3JhZ2VJRCgpOworICAg
IH0KKwogICAgIG1fbmV3ZXN0Q2FjaGUgPSBuZXdlc3RDYWNoZTsgCiAgICAgbV9jYWNoZXMuYWRk
KG1fbmV3ZXN0Q2FjaGUuZ2V0KCkpOwogICAgIG1fbmV3ZXN0Q2FjaGUtPnNldEdyb3VwKHRoaXMp
OwpJbmRleDogV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2Uu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2Fj
aGVTdG9yYWdlLmNwcAkocmV2aXNpb24gMzk5MzIpCisrKyBXZWJDb3JlL2xvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3Niw3ICsy
NzYsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjYWNoZUdyb3VwCiAgICAgbV9j
YWNoZXNJbk1lbW9yeS5yZW1vdmUoZ3JvdXAtPm1hbmlmZXN0VVJMKCkpOwogICAgIAogICAgIC8v
IElmIHRoZSBjYWNoZSBpcyBoYWxmLWNyZWF0ZWQsIHdlIGRvbid0IHdhbnQgaXQgaW4gdGhlIHNh
dmVkIHNldC4KLSAgICBpZiAoIWdyb3VwLT5zYXZlZE5ld2VzdENhY2hlUG9pbnRlcigpKQorICAg
IGlmICghZ3JvdXAtPnN0b3JhZ2VJRCgpKQogICAgICAgICBtX2NhY2hlSG9zdFNldC5yZW1vdmUo
dXJsSG9zdEhhc2goZ3JvdXAtPm1hbmlmZXN0VVJMKCkpKTsKIH0KIAo=
</data>
<flag name="review"
          id="12762"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>