Updating B can invalidate a whole set of keys, and B cannot be aware that A depends on it*. Because of memcached's unreliability of having B at given time.
So if B drops out of memcached all keys dependant on it have to be invalidated. * Seen a few implementations where B contains a set of keys to invalidate, but those implementations are wrong. If B drops, then values tagged with it cannot be invalidated/deleted. Jared On Sep 12, 7:30 am, Henrik Schröder <[email protected]> wrote: > Why don't you just invalidate A when you update B instead? That would save > you a lot of operations having to check B every time you fetch A? > > /Henrik > > > > On Fri, Sep 11, 2009 at 18:10, Ren <[email protected]> wrote: > > > Hi, > > > If A depends B would it be safe to embedded B's CAS token into A's > > value, > > then when A is retrieved see if B's CAS differs to the one stored > > within A, and therefore invalidating A? > > > Jared
