11162: Set a default cache time of 24 hours for files fetched over http.
authorPeter Amstutz <pamstutz@veritasgenetics.com>
Wed, 23 May 2018 16:52:22 +0000 (12:52 -0400)
committerPeter Amstutz <pamstutz@veritasgenetics.com>
Thu, 24 May 2018 19:35:42 +0000 (15:35 -0400)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz@veritasgenetics.com>

sdk/cwl/arvados_cwl/http.py

index 064aa8d5a9637fdabf013f0e12f6717630390a78..af9bf042e4add94ae1b2443ee37050423a6ee0e7 100644 (file)
@@ -31,6 +31,11 @@ def fresh_cache(url, properties):
     if expires is None and "Expires" in pr:
         expires = my_parsedate(pr["Expires"])
 
+    if expires is None:
+        # Use a default cache time of 24 hours if upstream didn't set
+        # any cache headers, to reduce redundant downloads.
+        expires = my_parsedate(pr["Date"]) + datetime.timedelta(hours=24)
+
     if not expires:
         return False