I have taken a database class this semester and we are studying about maintaining cache consistency between the RDBMS and a cache server such as memcached. The consistency issues arise when there are race conditions. For example: 1. Suppose I do a get(key) from the cache and their is a cache miss. Because I get a cache miss, I fetch the data from the database, and then do a put(key,value) into the cache. 2. But, a race condition might happen, where some other user might delete the data I fetched from the database. This delete might happen before I do a put into the cache.
Thus, ideally the put into the cache should not happen, since the data is longer present into the database.
If the cache entry has a TTL, the entry in the cache might expire. But still, their is a window where the data in the cache is inconsistent with the database.
Does anyone know how to prevent race condition in that scenario?
Thanks in advance.
Best Regards,
Steve
Best Regards,
Steve
Suppose that we have a message passing system using mailboxes. When sending to a full mail box or trying to receive from an empty one, a process does not block, instead, it gets an error code back. The process responds to the error code by just trying again, over and over, until it succeeds. Does this lead to RACE CONDITION?
Suppose that we have a message passing system using mailboxes. When sending to a full mail box or trying to receive from an empty one, a process does not block, instead, it gets an error code back. The process responds to the error code by just trying again, over and over, until it succeeds. Does this lead to RACE CONDITION?can someone help me pls :(
--
---
You received this message because you are subscribed to the Google Groups "memcached" group.
To unsubscribe from this group and stop receiving emails from it, send an email to memcached+...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.