AnsweredAssumed Answered

Caching of files in a building block based on IP address?

Question asked by mark.zielonko on May 7, 2018
Latest reply on May 11, 2018 by mark.zielonko


I've recently been having a strange issue while developing a building block and I was wondering if anyone has been through anything similar, or would have a better idea of where to start troubleshooting.

 

I’ve been hitting a pretty annoying snag that prevents Blackboard from delivering the most recent versions of javascript and HTML files when I update a building block. It does not seem to affect any of the components that operate on the server (ie. Java/XML files), only the files that are delivered to client machines. It is almost as if the system is caching files that have been sent out to a client, and not invalidating this cache if the source files are changed. This caching seems to stay active over multiple days, and seems to treat each public IP address differently (a "fresh" machine will be delivered the most recent file, but it will be "stuck" on this version from this point onwards).

 

Example scenario:
- Client accesses Servlet, is delivered webpage.html and functionality.js, which send post requests to ServerFunctions.java (on the server).
- Servlet is updated with a new functionality.js and ServerFunctions.java file (uninstall old version then reinstall new version from the admin console)

- Client reloads webpage.html (and by extension, functionality.js), but the files delivered to the client are identical to the ones before the update
- When post request is sent to the server, ServerFunctions.java response reflects update, confirming that the building block has been updated; issue appears to only affect files delivered to client


Some of the solutions attempted (with no success)

  • Clear browser cache, reload
  • Clear cookies (and browser cache), reload
  • Use different browsers, perform actions above
  • Install new building block over top of old one
  • Uninstall old building block (and test to make sure page is gone) and then install new one
  • Multiple computers – mixed success:
    • Each computer will load the newest [at least] once (in office) - but this may be multiple public IP addresses
    • From a different local IP address but same external IP, file delivered will be identical between all computers

 

It`s also worth mentioning that this behavior seems to have become consistent only over the last 1-1.5 months in our systems

Outcomes