<div>
<div>Hello mailing list!</div>
<div>&nbsp;</div>
<div>I&#39;m currently attempting to implement memcached for our site, and am trying to do some thing which may or may not be possible. I thought someone here might be able to help.<br><br>I have implemented a wrapper for the memcached client which adds basic namespacing to memcached as per the method posted by Brian Moon at 
<a href="http://lists.danga.com/pipermail/memcached/2006-July/002545.html">http://lists.danga.com/pipermail/memcached/2006-July/002545.html</a>. I was wondering if this can be extended to allow multiple namespaces for a key, each of which can expire the cache. An example situation would be that I have cached a message board for a user. I wish to invalidate this if either a/ the users security settings change or b/ a thread is posted to the message board.
</div>
<div>&nbsp;</div>
<div>I think the solution lies with doing a lookup for the query, and returning an array of keys of the namespaces used for that query, then doing memcached lookups for each of those keys, and building&nbsp;a final key up from the&nbsp;results of those lookups which should point&nbsp;to&nbsp;the&nbsp;cached object.&nbsp;Does that make sense?
</div>
<div>&nbsp;</div>
<div>My other issue concerns caching look-ups.</div>
<div>&nbsp;</div>
<div>Imagine I have a table Users, which I wish to resolve to a User object, using any of several indexes (id, email, username). I want to cache the fact that, for example, email address <a href="mailto:&#39;abc@user.com&#39;">
&#39;abc@user.com&#39;</a> points to the user object with id 123 etc. etc. </div>
<div>&nbsp;</div>
<div>Whe my invalidation trigger runs, and I invalidate the namespace for the updated row, do I also need to update all the cached index lookups, or is there a clever way to do it using a namespace? I can&#39;t figure one out, but I also think there should be a clever way.
</div>
<div>&nbsp;</div>
<div>cheers everyody,</div>
<div>&nbsp;</div>
<div>Harry</div></div>