You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
process A caches item X/Y/Z => item gets saved in memcache, "curent revision" for X/, X/Y and X/Y/Z saved in both memcache and process memory. Process keeps running
process B invalidates X/Y. This means bumping the revision nr of X/Y in memcache
process A reads cache for item X/Y/Z => it takes from memory the revision number, and considers the stale item still valid
I am not sure 100% about the best way to solve this.
One way would be to add a "global counter" as memcache item, which gets bumped on every invocation of clear(). Then, it would have to always be checked in makeKeyString() before using the in-memory version of revision numbers.
A small pref loss (1 more memcache get per read/write) for more stability
The text was updated successfully, but these errors were encountered:
The new functionality automatically clears the key cache cache every second, and allows that time to be reduced and even disabled (by setting it to zero).
Imagine the following scenario:
I am not sure 100% about the best way to solve this.
One way would be to add a "global counter" as memcache item, which gets bumped on every invocation of clear(). Then, it would have to always be checked in makeKeyString() before using the in-memory version of revision numbers.
A small pref loss (1 more memcache get per read/write) for more stability
The text was updated successfully, but these errors were encountered: