locked
Blob cache not refreshing RRS feed

  • General discussion

  • Hi,

    We have a MOSS 2007 website hosted on separate staging and production farms. In this site we have a document library holding .css and .js files.

    Issue is that when a .css or .js file is updated (e.g. overwritten by a the updated file) on staging and then deployed to production (using a tool based on content deployment APIs), on one of the production WFEs the file that is served remains the old one. While from other production WFEs, new file gets served as expected.

    The problematic server starts serving new file only when Blob cache is manually flushed from _layouts/settings.aspx -> "site collection object cache" -> "Force this server to reset its disk based cache".

    So I am suspecting that the blob cache is not getting refreshed as it should on this server.

    Web.config entry for blob caching on this server is as below:

    <BlobCache location="C:\blobCache" path="\.(gif|jpg|png|css|js|swf|flv)$" maxSize="10" enabled="true" max-age="86400" />

    Kindly help resolve this issue !!

    Thanks and Regards,

    kaushik

    Thursday, October 11, 2012 11:52 AM

All replies

  • That's why there is a manual flush in Central Admin.  The blob cache only refreshes based on timing.  Deploying new source to the content database doesn't flush the cache.  Its not designed to.  When you deploy new code you need to manually force the server to re-build its cache  or wait for it to pick up the new content as the old content ages out of the cache.  That's the way its designed to work.

    Paul Stork SharePoint Server
    MVP Senior Solutions Architect: BlueChip Consulting Group
    Blog: http://dontpapanic.com/blog
    Twitter: Follow @pstork
    Please remember to mark your question as "answered" if this solves your problem.

    Thursday, October 11, 2012 11:59 AM
  • Hi Paul,

    We are not deploying any code but a library having .css and .js files. For blob caching, I read on msdn that by default after every 5 seconds, cache is checked for any changes in content DB and if change is detected for any file,  then its index entry is invalidated hence paving the way for new file to be served/cached.

    But in my case cache invalidation in not happening automatically and I have explicitly flush it from site admin.

    My other production WFEs are doing good as they refresh their cache once they detect that the cahced file got changed in content DB.

    thanks and regards,

    kaushik

    Thursday, October 11, 2012 12:21 PM