diff options
author | Edward Wang <[email protected]> | 2024-11-11 18:09:55 -0800 |
---|---|---|
committer | Matthew Gumport <[email protected]> | 2024-11-22 14:52:01 -0800 |
commit | 725329fa717b878615e2d207165e0573bcd09ee5 (patch) | |
tree | 17ae9b6fb9b00f2ba1304b95f48cd5ec4dbe2c83 /pingora-cache/src/predictor.rs | |
parent | a03a03d444a2bda2618d8e5724948cec7603c5f8 (diff) | |
download | pingora-bleeper-mgumport-89319e9383d6f99066dfeace750a553d45e1c167.tar.gz pingora-bleeper-mgumport-89319e9383d6f99066dfeace750a553d45e1c167.zip |
Release cache lock after proxy upstream filter, serve stalebleeper-mgumport-89319e9383d6f99066dfeace750a553d45e1c167
The cache locks may be held after serving stale, proxy upstream filter,
or revalidate uncacheable resulting in dangling cache locks.
Also only disable cache on final error if cache was not already
disabled, and add DeclinedToUpstream / UpstreamError no cache reasons.
Diffstat (limited to 'pingora-cache/src/predictor.rs')
-rw-r--r-- | pingora-cache/src/predictor.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pingora-cache/src/predictor.rs b/pingora-cache/src/predictor.rs index df8f374..d131c20 100644 --- a/pingora-cache/src/predictor.rs +++ b/pingora-cache/src/predictor.rs @@ -120,7 +120,7 @@ where // CacheLockGiveUp: the writer will set OriginNotCache (if applicable) // readers don't need to do it NeverEnabled | StorageError | InternalError | Deferred | CacheLockGiveUp - | CacheLockTimeout => { + | CacheLockTimeout | DeclinedToUpstream | UpstreamError => { return None; } // Skip certain NoCacheReason::Custom according to user |