Product Pages and Images Not Loading Properly after moving to @netlify/gatsby-plugin

  • site

We recently changed our build plugins from netlify-plugin-gatsby-cache to @netlify/gatsby-plugin to help resolve some issues where users on certain browsers were getting cached (and thus broken) versions of the site rather than updated site with updated data.

In the process, now for even more browsers on more devices the page is cached and thus broken. If the site is opened incognito is loads as expected.

Can you please help?

We don’t know what do to, what needs to be updated for fixed. Whether its our heading settings or something with the plugin.

Here is a video of what users are experiencing:

A user confirmed on MacOS Chrome that old versions of the site are still being served. Error The result of this StaticQuery could not be fetched indicates an old version of the site. Since Gatsby v5, StaticQuery has been deprecated and the codebase replaced all instances with the useStaticQuery hook.

Hi @Michael_Yuasa, I don’t see any site with the domain: on Netlify. Is that the correct domain?

The domain is being pointed to Netlify DNS servers, being deployed to

Thanks for following up! I’m seeing the root path for the site loading up properly on my end; are some of your users still seeing missing or old content? I unfortunately don’t have permission to view the video link you provided.

This behavior will sometimes occur if you have a service worker installed on the site (via gatsby-plugin-offline or otherwise), which might be serving the old cached content.

@marcus.little This issue is still randomly occurring, not consistently. Once upon a time, this site had a service worker. I removed the service worker via the remove service worker plugin and added a script to programatically delete any workers running via the Navigator object. I have updated the cache-control headers and purged the cache via the Netlify api.

Here is an instance today:

Service Workers cannot be deleted if the browser never fetches the updated page that includes the code to remove the service worker. So, an incorrectly cached service worker can remain cached forever without you being able to do anything.