Project

Profile

Help

Issue #7958

Updated by ttereshc over 3 years ago

For a repo, any content that is changed or updated after an action like repo sync, the repo metadata file gets updated .  
 ( repomd.xml ) 
 But on trying to access it, the response received does not have the Last Modified header updated to match the time stamp that the repomd.xml was actually modified. 

 It continues to send out a response with the Last Modified time set to an old updates timestamp 
 This is causing issues where the browser or any other caching proxy is getting a 304 Not modified response and hece the cache is not getting invalidated and the new updated version is not received.  

 This may not be the case with only repomd.xml but with all content serverd by pulp. 
 This is noticed in repomd.xml because its the only one that's modified frequently and the others are all mostly new content/new rpm or iso versions.  

 ~~~ 
 # ls -l /var/lib/pulp/published/yum/http/repos/centos/7/x86_64/updates/repodata/repomd.xml  
 -rw-r--r-- 1 apache apache 2171 Dec    8 21:30 /var/lib/pulp/published/yum/http/repos/centos/7/x86_64/updates/repodata/repomd.xml 
 ~~~ 

 The file timestamp modification time is 21:30 Dec 8 PDT (Wed, 09 Dec 2020 05:30 GMT) 
 Below is the response header : 
 ~~~ 
 ------ 
 Request Method: GET 
 Status Code: 304 Not Modified 
 Remote Address: 10.**.**.**:80 
 Referrer Policy: strict-origin-when-cross-origin 

 Content-Length: 2171 
 Content-Type: text/xml 
 Date: Wed, 09 Dec 2020 05:41:15 GMT 
 ETag: "d41d8cd98f00b204e9800998ecf8427e" 
 Last-Modified: Wed, 09 Dec 2020 05:29:07 GMT 
 Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_wsgi/3.4 Python/2.7.5 
 ---------- 

 ~~~ 
 On clearing the cache it gets a fresh version which is the latest. But it fails to invalidate out-dated caches due to this issue with Last-Modified not getting an update and the 304 response from the pulp server.

Back