CDN Max Age causes frequent sha512 mismatches on firefox nightly
Categories
(Release Engineering :: Release Automation, defect, P1)
Tracking
(Not tracked)
People
(Reporter: graham, Unassigned)
References
Details
(Whiteboard: [releaseduty])
Comment 1•8 years ago
|
||
Comment 2•8 years ago
|
||
Comment 3•8 years ago
|
||
Comment 4•8 years ago
|
||
Comment 5•8 years ago
|
||
Comment 6•8 years ago
|
||
Updated•8 years ago
|
Updated•8 years ago
|
Comment 8•6 years ago
|
||
As I said in https://bugzilla.mozilla.org/show_bug.cgi?id=1483637, the proper fix is that cache should be invalidated when a new build is pushed. This would even allow to set longer caching periods (like back to 24 h), since you would now control the cache expiration manually anyway.
Comment 9•6 years ago
|
||
The lambda function created in bug 1393990 might be worth another look here, eg call it from beetmover.
Comment 10•6 years ago
|
||
(In reply to Nick Thomas [:nthomas] (UTC+13) from comment #9)
The lambda function created in bug 1393990 might be worth another look here, eg call it from beetmover
This is a great idea. Maybe we should chain that behavior to the existing beetmover-checksums job which runs at the end of the promotion-graph. Ah wait, we don't have that yet in nightly graphs. Until shippable builds are implemented, sounds like we really need to backport the "post-beetmover-dummy" tasks or alike. Or maybe we should just create a different task. I'd definitely avoid calling that lambda function 500 times for all the locales in the graph though.
Comment 11•6 years ago
|
||
Quick follow-up here, I had a conversation with CloudOps earlier today and conclusions were:
- we could use the lambda call programatically if we wanted to
- most likely we'd hit some API limits if we called this with each beetmover job, rather than once at the end of the release graph
- we still need to check if there are some costs associated with the recursive items (costwise or timewise or w\e)
- we could be calling the CDN purge after beetmover jobs will have been transferred the files and then once again after the beetmover checksums but there are still issues around that (regex tweaks for just the latter, still a timeframe window in which we could be having a mismatch, etc)
- we currently set a cache-control max-age policy of 4h for all artifacts that beetmover is sending. We could downgrade that to 1h or 5 mins for nightly artifacts and leave it be for the rest of them (or not set it and default to 24h or w\e)
Bottom-line, we should be exploring the possibility of setting the max-age to something smaller for nightly arfifacts and ideally solve this without the lambda API CDN cache call.
Comment 12•2 years ago
|
||
As far as I can tell, max-age on files in latest-mozilla-central is 300s, and 43200 on things like https://archive.mozilla.org/pub/firefox/nightly/2023/05/2023-05-31-04-17-23-mozilla-central/firefox-115.0a1.en-US.linux-x86_64.tar.bz2
Description
•