On skimming the code it looks like tag invalidating loops over all items and removes them from a linked list, then removes the tag from the splay tree.

-Dormando

Jonathan Ariel wrote:
It doesn't seems to be a loop, it says "We use hash and splay tree, make the tag_add and tag_delete commands very quickly, and save memory as much as possible."

On Fri, May 9, 2008 at 2:44 PM, Dustin Sallings <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:


    On May 9, 2008, at 9:52, John Kramlich wrote:

    Is anyone using the variant of memcached v 1.2.4 that supports
    tagging found at the following
    URLhttp://code.google.com/p/memcached-tag/ ?  I am in the planning
    stages of major feature additions to my web application and would
    really like to use this version.  I'm looking for feedback from
    others who have used it.  Is it stable enough for production use?
     Any issues?

    I think tagging is a generally useful feature, but we honestly
    haven't put a lot of effort into reviewing the tag code.

    In particular, we want tagging to be cheap on both setting and
    invalidating.  If either operation has to perform more than a single
    lookup, then it may not be desirable.  In particular, deleting by
    tag is a loop (within a lock and with another nested loop within
    it), which may cause the server to hang for long periods of time
    when invalidating a widely-used tag.  It *should* be possible to do
    this without such a loop.

-- Dustin Sallings



Reply via email to