<div>As I understood from the memcache docs and code deltes were never meant to be &quot;straight away&quot; but on a &quot;when resources are available&quot; basis.</div>
<div>&nbsp;</div>
<div>I do not understand how you expect to use add because it doesn't overwrite existign keys when you have just deleted them beforehand.</div>
<div>&nbsp;</div>
<div>If your code is more like:</div>
<div>&nbsp;</div>
<div>ADD</div>
<div>if(condition){</div>
<div>DELETE</div>
<div>}</div>
<div>ADD</div>
<div>&nbsp;</div>
<div>you might change it to:<br>&nbsp;</div>
<div>ADD</div>
<div>if(condition){</div>
<div>SET</div>
<div>}else{</div>
<div>ADD</div>
<div>}</div>
<div>&nbsp;</div>
<div>To do what you want. How can you not use set instead of delete-add?</div>
<div>&nbsp;</div>
<div>SN<br>&nbsp;</div>
<div><span class="gmail_quote">On 1/11/06, <b class="gmail_sendername"><a href="mailto:memcached-request@lists.danga.com">memcached-request@lists.danga.com</a></b> &lt;<a href="mailto:memcached-request@lists.danga.com">memcached-request@lists.danga.com
</a>&gt; wrote:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Send memcached mailing list submissions to<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="mailto:memcached@lists.danga.com">memcached@lists.danga.com
</a><br><br>To subscribe or unsubscribe via the World Wide Web, visit<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://lists.danga.com/mailman/listinfo/memcached">http://lists.danga.com/mailman/listinfo/memcached</a><br>or, via email, send a message with subject or body 'help' to
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="mailto:memcached-request@lists.danga.com">memcached-request@lists.danga.com</a><br><br>You can reach the person managing the list at<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="mailto:memcached-owner@lists.danga.com">memcached-owner@lists.danga.com
</a><br><br>When replying, please edit your Subject line so it is more specific<br>than &quot;Re: Contents of memcached digest...&quot;<br><br><br>Today's Topics:<br><br>&nbsp;&nbsp;1. Re: Deletes Are Driving Me Crazy (Matthew Glubb)
<br>&nbsp;&nbsp;2. Re: Deletes Are Driving Me Crazy (Fabian Thylmann)<br>&nbsp;&nbsp;3. Re: Deletes Are Driving Me Crazy (Matthew Glubb)<br>&nbsp;&nbsp;4. Re: Deletes Are Driving Me Crazy (Jeff Rodenburg)<br>&nbsp;&nbsp;5. Re: Deletes Are Driving Me Crazy (Matthew Glubb)
<br>&nbsp;&nbsp;6. Re: Deletes Are Driving Me Crazy (Greg Whalin)<br><br><br>----------------------------------------------------------------------<br><br>Message: 1<br>Date: Wed, 11 Jan 2006 12:09:41 +0000<br>From: Matthew Glubb &lt;
<a href="mailto:matt@zgroupplc.com">matt@zgroupplc.com</a>&gt;<br>Subject: Re: Deletes Are Driving Me Crazy<br>To: <a href="mailto:memcached@lists.danga.com">memcached@lists.danga.com</a><br>Message-ID: &lt;<a href="mailto:A841A769-B1E8-4C22-B4F7-9A89167DE79B@zgroupplc.com">
A841A769-B1E8-4C22-B4F7-9A89167DE79B@zgroupplc.com</a>&gt;<br>Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed<br><br>Thanks for the reply, but no, that is not want I want. I need to know<br>that when I delete an item, it is deleted. I need to be able to use
<br>add because there are other situations where I want to prevent the<br>possibility of overwriting a value. 'add' is a great way to defend<br>against that situation.<br><br>Matt<br><br>On 11 Jan 2006, at 11:39, Fabian Thylmann wrote:
<br><br>&gt; Hi Matt,<br>&gt;<br>&gt; what you probably want is<br>&gt;<br>&gt; set(key, val)<br>&gt;<br>&gt; which will set a new value for key even if it exists.<br>&gt;<br>&gt; Fabian<br>&gt;<br>&gt;<br>&gt; Matthew Glubb wrote:
<br>&gt;<br>&gt;&gt; Happy New Year to you all.<br>&gt;&gt;<br>&gt;&gt; I am sorry if this has been covered before but I have trawled<br>&gt;&gt; through&nbsp;&nbsp;the list archives and cannot find a definitive solution.<br>&gt;&gt;
<br>&gt;&gt; I would really like to know how to:<br>&gt;&gt;<br>&gt;&gt; add(key, val)<br>&gt;&gt; delete(key)<br>&gt;&gt; add(key, val)<br>&gt;&gt;<br>&gt;&gt; Just seems to plain not work (all adds have zero expiration).
<br>&gt;&gt;<br>&gt;&gt; If I:<br>&gt;&gt;<br>&gt;&gt; add(key, val)<br>&gt;&gt; delete(key, 1)<br>&gt;&gt; sleep(2)<br>&gt;&gt; add(key, val)<br>&gt;&gt;<br>&gt;&gt; It works.<br>&gt;&gt;<br>&gt;&gt; Please can someone enlighten me as to how I may immediately delete
<br>&gt;&gt; a&nbsp;&nbsp;key and then add a key of the same name? I am using<br>&gt;&gt; memcached-1.1.12&nbsp;&nbsp;&amp; John McCaskey's mcache extension 1.2.0 beta10.<br>&gt;&gt;<br>&gt;&gt; I noticed in the archives this thread:<br>&gt;&gt;
<br>&gt;&gt; &lt;<a href="http://lists.danga.com/pipermail/memcached/2004-July/000688.html">http://lists.danga.com/pipermail/memcached/2004-July/000688.html</a>&gt;<br>&gt;&gt;<br>&gt;&gt; This seems to be related to the problem that I am having but my
<br>&gt;&gt; version of memcached is almost a year later than this so I would<br>&gt;&gt; assume that the patch referred to in the thread is included. I'm<br>&gt;&gt; going to check that this isn't a problem with John's mcache
<br>&gt;&gt; extension&nbsp;&nbsp;but if anyone has a simple answer to my problem I'd<br>&gt;&gt; love to hear it.<br>&gt;&gt;<br>&gt;&gt; Thanks a lot for your help :)<br>&gt;&gt;<br>&gt;&gt; Matt<br>&gt;&gt;<br>&gt;&gt;<br>&gt;<br>
<br><br><br>m a t t h e w&nbsp;&nbsp; g l u b b<br><br>________________________________________________________________________<br>Z Group PLC<br><br>Tel: +44 (0) 8700 111 173<br>Fax: +44 (0) 8707 051 393<br>Txt: +44 (0) 7800 140 877
<br>Web: &lt;<a href="http://www.zgroupplc.com/">http://www.zgroupplc.com/</a>&gt;<br><br>PLEASE NOTE ZGROUP IS NOT LIABLE&nbsp;&nbsp;FOR ANY DAMAGES,&nbsp;&nbsp;MALFUNCTION, OR LOSS<br>OF DATA,&nbsp;&nbsp;CAUSED AS A RESULT OF FOLLOWING&nbsp;&nbsp;ANY&nbsp;&nbsp;ADVICE&nbsp;&nbsp;ENCLOSED IN THIS
<br>EMAIL. ANY CHANGES SHOULD BE CARRIED OUT AT YOUR OWN RISK.<br><br>This&nbsp;&nbsp;email&nbsp;&nbsp;and&nbsp;&nbsp;any&nbsp;&nbsp;files&nbsp;&nbsp;transmitted&nbsp;&nbsp;with it are&nbsp;&nbsp;confidential and<br>intended solely for the use of the individual or entity to whom they are<br>
addressed.&nbsp;&nbsp;The opinions&nbsp;&nbsp;expressed in this mail are those of the author<br>and do not necessarily&nbsp;&nbsp;represent the views of the company.&nbsp;&nbsp;If you have<br>received this email in error please notify &lt;<a href="mailto:service@zgroupplc.com">
service@zgroupplc.com</a>&gt;<br><br><br><br><br><br>------------------------------<br><br>Message: 2<br>Date: Wed, 11 Jan 2006 16:03:24 +0100<br>From: Fabian Thylmann &lt;<a href="mailto:fabian@toomuchmedia.com">fabian@toomuchmedia.com
</a>&gt;<br>Subject: Re: Deletes Are Driving Me Crazy<br>To: Matthew Glubb &lt;<a href="mailto:matt@zgroupplc.com">matt@zgroupplc.com</a>&gt;<br>Cc: <a href="mailto:memcached@lists.danga.com">memcached@lists.danga.com</a>
<br>Message-ID: &lt;<a href="mailto:43C51E3C.8060804@toomuchmedia.com">43C51E3C.8060804@toomuchmedia.com</a>&gt;<br>Content-Type: text/plain; charset=ISO-8859-1; format=flowed<br><br>Could you explain a little bit more what you are trying to do then?
<br>Maybe you are using memcached in a way it was not designed to be used.<br><br>Fabian<br><br><br>Matthew Glubb wrote:<br><br>&gt; Thanks for the reply, but no, that is not want I want. I need to know<br>&gt; that when I delete an item, it is deleted. I need to be able to use
<br>&gt; add because there are other situations where I want to prevent the<br>&gt; possibility of overwriting a value. 'add' is a great way to defend<br>&gt; against that situation.<br>&gt;<br>&gt; Matt<br>&gt;<br>&gt; On 11 Jan 2006, at 11:39, Fabian Thylmann wrote:
<br>&gt;<br>&gt;&gt; Hi Matt,<br>&gt;&gt;<br>&gt;&gt; what you probably want is<br>&gt;&gt;<br>&gt;&gt; set(key, val)<br>&gt;&gt;<br>&gt;&gt; which will set a new value for key even if it exists.<br>&gt;&gt;<br>&gt;&gt; Fabian
<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; Matthew Glubb wrote:<br>&gt;&gt;<br>&gt;&gt;&gt; Happy New Year to you all.<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; I am sorry if this has been covered before but I have trawled<br>&gt;&gt;&gt; through&nbsp;&nbsp;the list archives and cannot find a definitive solution.
<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; I would really like to know how to:<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; add(key, val)<br>&gt;&gt;&gt; delete(key)<br>&gt;&gt;&gt; add(key, val)<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Just seems to plain not work (all adds have zero expiration).
<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; If I:<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; add(key, val)<br>&gt;&gt;&gt; delete(key, 1)<br>&gt;&gt;&gt; sleep(2)<br>&gt;&gt;&gt; add(key, val)<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; It works.<br>&gt;&gt;&gt;
<br>&gt;&gt;&gt; Please can someone enlighten me as to how I may immediately delete<br>&gt;&gt;&gt; a&nbsp;&nbsp;key and then add a key of the same name? I am using<br>&gt;&gt;&gt; memcached-1.1.12&nbsp;&nbsp;&amp; John McCaskey's mcache extension 
1.2.0 beta10.<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; I noticed in the archives this thread:<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; &lt;<a href="http://lists.danga.com/pipermail/memcached/2004-July/000688.html">http://lists.danga.com/pipermail/memcached/2004-July/000688.html
</a>&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; This seems to be related to the problem that I am having but my<br>&gt;&gt;&gt; version of memcached is almost a year later than this so I would<br>&gt;&gt;&gt; assume that the patch referred to in the thread is included. I'm
<br>&gt;&gt;&gt; going to check that this isn't a problem with John's mcache<br>&gt;&gt;&gt; extension&nbsp;&nbsp;but if anyone has a simple answer to my problem I'd&nbsp;&nbsp;love<br>&gt;&gt;&gt; to hear it.<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Thanks a lot for your help :)
<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Matt<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt; m a t t h e w&nbsp;&nbsp; g l u b b<br>&gt;<br>&gt; ________________________________________________________________________
<br>&gt; Z Group PLC<br>&gt;<br>&gt; Tel: +44 (0) 8700 111 173<br>&gt; Fax: +44 (0) 8707 051 393<br>&gt; Txt: +44 (0) 7800 140 877<br>&gt; Web: &lt;<a href="http://www.zgroupplc.com/">http://www.zgroupplc.com/</a>&gt;<br>
&gt;<br>&gt; PLEASE NOTE ZGROUP IS NOT LIABLE&nbsp;&nbsp;FOR ANY DAMAGES,&nbsp;&nbsp;MALFUNCTION, OR LOSS<br>&gt; OF DATA,&nbsp;&nbsp;CAUSED AS A RESULT OF FOLLOWING&nbsp;&nbsp;ANY&nbsp;&nbsp;ADVICE&nbsp;&nbsp;ENCLOSED IN THIS<br>&gt; EMAIL. ANY CHANGES SHOULD BE CARRIED OUT AT YOUR OWN RISK.
<br>&gt;<br>&gt; This&nbsp;&nbsp;email&nbsp;&nbsp;and&nbsp;&nbsp;any&nbsp;&nbsp;files&nbsp;&nbsp;transmitted&nbsp;&nbsp;with it are&nbsp;&nbsp;confidential and<br>&gt; intended solely for the use of the individual or entity to whom they are<br>&gt; addressed.&nbsp;&nbsp;The opinions&nbsp;&nbsp;expressed in this mail are those of the author
<br>&gt; and do not necessarily&nbsp;&nbsp;represent the views of the company.&nbsp;&nbsp;If you have<br>&gt; received this email in error please notify &lt;<a href="mailto:service@zgroupplc.com">service@zgroupplc.com</a>&gt;<br>&gt;<br>&gt;
<br>&gt;<br>&gt;<br>&gt;<br><br><br><br>------------------------------<br><br>Message: 3<br>Date: Wed, 11 Jan 2006 16:04:04 +0000<br>From: Matthew Glubb &lt;<a href="mailto:matt@zgroupplc.com">matt@zgroupplc.com</a>&gt;<br>
Subject: Re: Deletes Are Driving Me Crazy<br>To: Fabian Thylmann &lt;<a href="mailto:fabian@toomuchmedia.com">fabian@toomuchmedia.com</a>&gt;<br>Cc: <a href="mailto:memcached@lists.danga.com">memcached@lists.danga.com</a>
<br>Message-ID: &lt;<a href="mailto:ADEC3F04-9F42-48E3-8709-0B3B6525075B@zgroupplc.com">ADEC3F04-9F42-48E3-8709-0B3B6525075B@zgroupplc.com</a>&gt;<br>Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed<br>
<br>Hi Fabian,<br><br>If you refer to the thread that I quoted in my original mail it was<br>accepted as a bug then and a patch was introduced.<br><br>I am afraid that, for legal reasons, I am unable to provide you with<br>
the specific application of memcache in this instance but I can<br>assure you that I understand that memcache is not a database, it is a<br>cache ;)<br><br>I simply wish to be able to delete a key that has a zero expiry<br>
period and then immediately be able to add a key of the same name.<br>The reason that I cannot use set is because if it already exists in<br>the cache I do not want to replace the value.<br><br>I have just tried the same process with the PECL extension and the
<br>problem persists. For this reason I am pretty sure that the problem<br>is not with the PHP extensions that I have used.<br><br>I should note that this problem seems to be sporadic and time based,<br>leading me to believe that keys are not necessarily deleted from
<br>memcache at the moment the request is made.<br><br>Thanks a lot for your help on this one. Perhaps I have missed<br>something fundamental about memcache regarding deletes, etc?<br><br>Regards,<br><br>Matt<br><br>On 11 Jan 2006, at 15:03, Fabian Thylmann wrote:
<br><br>&gt; Could you explain a little bit more what you are trying to do then?<br>&gt; Maybe you are using memcached in a way it was not designed to be used.<br>&gt;<br>&gt; Fabian<br>&gt;<br>&gt;<br>&gt; Matthew Glubb wrote:
<br>&gt;<br>&gt;&gt; Thanks for the reply, but no, that is not want I want. I need to<br>&gt;&gt; know&nbsp;&nbsp;that when I delete an item, it is deleted. I need to be able<br>&gt;&gt; to use&nbsp;&nbsp;add because there are other situations where I want to
<br>&gt;&gt; prevent the&nbsp;&nbsp;possibility of overwriting a value. 'add' is a great<br>&gt;&gt; way to defend&nbsp;&nbsp;against that situation.<br>&gt;&gt;<br>&gt;&gt; Matt<br>&gt;&gt;<br>&gt;&gt; On 11 Jan 2006, at 11:39, Fabian Thylmann wrote:
<br>&gt;&gt;<br>&gt;&gt;&gt; Hi Matt,<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; what you probably want is<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; set(key, val)<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; which will set a new value for key even if it exists.
<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Fabian<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Matthew Glubb wrote:<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; Happy New Year to you all.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; I am sorry if this has been covered before but I have trawled
<br>&gt;&gt;&gt;&gt; through&nbsp;&nbsp;the list archives and cannot find a definitive solution.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; I would really like to know how to:<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; add(key, val)<br>&gt;&gt;&gt;&gt; delete(key)
<br>&gt;&gt;&gt;&gt; add(key, val)<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; Just seems to plain not work (all adds have zero expiration).<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; If I:<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; add(key, val)
<br>&gt;&gt;&gt;&gt; delete(key, 1)<br>&gt;&gt;&gt;&gt; sleep(2)<br>&gt;&gt;&gt;&gt; add(key, val)<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; It works.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; Please can someone enlighten me as to how I may immediately
<br>&gt;&gt;&gt;&gt; delete&nbsp;&nbsp;a&nbsp;&nbsp;key and then add a key of the same name? I am using<br>&gt;&gt;&gt;&gt; memcached-1.1.12&nbsp;&nbsp;&amp; John McCaskey's mcache extension 1.2.0 beta10.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; I noticed in the archives this thread:
<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; &lt;<a href="http://lists.danga.com/pipermail/memcached/2004-July/000688.html">http://lists.danga.com/pipermail/memcached/2004-July/000688.html</a>&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; This seems to be related to the problem that I am having but
<br>&gt;&gt;&gt;&gt; my&nbsp;&nbsp; version of memcached is almost a year later than this so I<br>&gt;&gt;&gt;&gt; would&nbsp;&nbsp; assume that the patch referred to in the thread is<br>&gt;&gt;&gt;&gt; included. I'm&nbsp;&nbsp; going to check that this isn't a problem with
<br>&gt;&gt;&gt;&gt; John's mcache&nbsp;&nbsp;extension&nbsp;&nbsp;but if anyone has a simple answer to<br>&gt;&gt;&gt;&gt; my problem I'd&nbsp;&nbsp;love to hear it.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; Thanks a lot for your help :)<br>&gt;&gt;&gt;&gt;
<br>&gt;&gt;&gt;&gt; Matt<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; m a t t h e w&nbsp;&nbsp; g l u b b<br>&gt;&gt;<br>&gt;&gt; _____________________________________________________________________
<br>&gt;&gt; ___<br>&gt;&gt; Z Group PLC<br>&gt;&gt;<br>&gt;&gt; Tel: +44 (0) 8700 111 173<br>&gt;&gt; Fax: +44 (0) 8707 051 393<br>&gt;&gt; Txt: +44 (0) 7800 140 877<br>&gt;&gt; Web: &lt;<a href="http://www.zgroupplc.com/">
http://www.zgroupplc.com/</a>&gt;<br>&gt;&gt;<br>&gt;&gt; PLEASE NOTE ZGROUP IS NOT LIABLE&nbsp;&nbsp;FOR ANY DAMAGES,&nbsp;&nbsp;MALFUNCTION,<br>&gt;&gt; OR LOSS<br>&gt;&gt; OF DATA,&nbsp;&nbsp;CAUSED AS A RESULT OF FOLLOWING&nbsp;&nbsp;ANY&nbsp;&nbsp;ADVICE&nbsp;&nbsp;ENCLOSED<br>
&gt;&gt; IN THIS<br>&gt;&gt; EMAIL. ANY CHANGES SHOULD BE CARRIED OUT AT YOUR OWN RISK.<br>&gt;&gt;<br>&gt;&gt; This&nbsp;&nbsp;email&nbsp;&nbsp;and&nbsp;&nbsp;any&nbsp;&nbsp;files&nbsp;&nbsp;transmitted&nbsp;&nbsp;with it are<br>&gt;&gt; confidential and<br>&gt;&gt; intended solely for the use of the individual or entity to whom
<br>&gt;&gt; they are<br>&gt;&gt; addressed.&nbsp;&nbsp;The opinions&nbsp;&nbsp;expressed in this mail are those of the<br>&gt;&gt; author<br>&gt;&gt; and do not necessarily&nbsp;&nbsp;represent the views of the company.&nbsp;&nbsp;If<br>&gt;&gt; you have<br>&gt;&gt; received this email in error please notify &lt;
<a href="mailto:service@zgroupplc.com">service@zgroupplc.com</a>&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;<br><br><br><br>m a t t h e w&nbsp;&nbsp; g l u b b<br><br>________________________________________________________________________
<br>Z Group PLC<br><br>Tel: +44 (0) 8700 111 173<br>Fax: +44 (0) 8707 051 393<br>Txt: +44 (0) 7800 140 877<br>Web: &lt;<a href="http://www.zgroupplc.com/">http://www.zgroupplc.com/</a>&gt;<br><br>PLEASE NOTE ZGROUP IS NOT LIABLE&nbsp;&nbsp;FOR ANY DAMAGES,&nbsp;&nbsp;MALFUNCTION, OR LOSS
<br>OF DATA,&nbsp;&nbsp;CAUSED AS A RESULT OF FOLLOWING&nbsp;&nbsp;ANY&nbsp;&nbsp;ADVICE&nbsp;&nbsp;ENCLOSED IN THIS<br>EMAIL. ANY CHANGES SHOULD BE CARRIED OUT AT YOUR OWN RISK.<br><br>This&nbsp;&nbsp;email&nbsp;&nbsp;and&nbsp;&nbsp;any&nbsp;&nbsp;files&nbsp;&nbsp;transmitted&nbsp;&nbsp;with it are&nbsp;&nbsp;confidential and<br>
intended solely for the use of the individual or entity to whom they are<br>addressed.&nbsp;&nbsp;The opinions&nbsp;&nbsp;expressed in this mail are those of the author<br>and do not necessarily&nbsp;&nbsp;represent the views of the company.&nbsp;&nbsp;If you have
<br>received this email in error please notify &lt;<a href="mailto:service@zgroupplc.com">service@zgroupplc.com</a>&gt;<br><br><br><br><br><br>------------------------------<br><br>Message: 4<br>Date: Wed, 11 Jan 2006 09:24:48 -0800
<br>From: Jeff Rodenburg &lt;<a href="mailto:jeff.rodenburg@gmail.com">jeff.rodenburg@gmail.com</a>&gt;<br>Subject: Re: Deletes Are Driving Me Crazy<br>To: Matthew Glubb &lt;<a href="mailto:matt@zgroupplc.com">matt@zgroupplc.com
</a>&gt;<br>Cc: <a href="mailto:memcached@lists.danga.com">memcached@lists.danga.com</a><br>Message-ID:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;<a href="mailto:50f433360601110924keb90fffya74a7e27bec3cb35@mail.gmail.com">50f433360601110924keb90fffya74a7e27bec3cb35@mail.gmail.com
</a>&gt;<br>Content-Type: text/plain; charset=&quot;iso-8859-1&quot;<br><br>On 1/11/06, Matthew Glubb &lt;<a href="mailto:matt@zgroupplc.com">matt@zgroupplc.com</a>&gt; wrote:<br>&gt;<br>&gt; I simply wish to be able to delete a key that has a zero expiry
<br>&gt; period and then immediately be able to add a key of the same name.<br>&gt; The reason that I cannot use set is because if it already exists in<br>&gt; the cache I do not want to replace the value.<br>&gt;<br><br>
I have a somewhat similar requirement, but I'm curious about this specific<br>approach.&nbsp;&nbsp;It sounds as if an object may go into the cache with a given key,<br>but in some scenarios if that key is already in use, that object would use a
<br>different key in the cache.&nbsp;&nbsp;Is that accurate?<br><br>This sound as if you might be using the cache as a queue or something to<br>delineate prioritization or ordering.<br><br>I know this doesn't resolve the particular add/delete/add scenario, but I'm
<br>curious about the requirements side.<br><br>cheers,<br>j<br>-------------- next part --------------<br>An HTML attachment was scrubbed...<br>URL: <a href="http://lists.danga.com/pipermail/memcached/attachments/20060111/811b3acb/attachment.htm">
http://lists.danga.com/pipermail/memcached/attachments/20060111/811b3acb/attachment.htm</a><br><br>------------------------------<br><br>Message: 5<br>Date: Wed, 11 Jan 2006 18:01:02 +0000<br>From: Matthew Glubb &lt;<a href="mailto:matt@zgroupplc.com">
matt@zgroupplc.com</a>&gt;<br>Subject: Re: Deletes Are Driving Me Crazy<br>To: Jeff Rodenburg &lt;<a href="mailto:jeff.rodenburg@gmail.com">jeff.rodenburg@gmail.com</a>&gt;<br>Cc: <a href="mailto:memcached@lists.danga.com">
memcached@lists.danga.com</a><br>Message-ID: &lt;<a href="mailto:05BB7AE9-E314-4DB1-B0CF-37249FD9C349@zgroupplc.com">05BB7AE9-E314-4DB1-B0CF-37249FD9C349@zgroupplc.com</a>&gt;<br>Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed
<br><br>Okay, I guess I can expand a little :)<br><br>You are right to guess that I am using memcache as a queue of sorts.<br>It's network related.<br><br>Each client has a maximum of N key/value pairs in the memcache.<br>
Multiple, concurrent requests may be arriving from the same client.<br>Every client uses the same key prefix for all of there keys ie.<br>prefix_[0 to N-1]. If a client tries to overwrite one of those key/<br>value pairs once they have been assigned the request is denied, hence
<br>the requirement for using add rather than set. If a client session<br>ends, all N key/value pairs should be deleted. If the same client<br>then starts another session they should be able to recreate up to N<br>key/value pairs using the same key names but containing different
<br>values.<br><br>I have multiple red hat boxes running lighttpd and load-balanced fast-<br>cgi php 5.0.5 modules with John's mcache extension 1.2.0 beta10<br>compiled against libmemcache-1.4.0.b9. Memcached is version 1.1.12
.<br><br>Sometimes it works, sometimes it doesn't. It seems to me that deleted<br>keys are not always deleted 'straightaway'.<br><br>Matt<br><br>On 11 Jan 2006, at 17:24, Jeff Rodenburg wrote:<br><br>&gt; On 1/11/06, Matthew Glubb &lt;
<a href="mailto:matt@zgroupplc.com">matt@zgroupplc.com</a>&gt; wrote:<br>&gt;&gt;<br>&gt;&gt; I simply wish to be able to delete a key that has a zero expiry<br>&gt;&gt; period and then immediately be able to add a key of the same name.
<br>&gt;&gt; The reason that I cannot use set is because if it already exists in<br>&gt;&gt; the cache I do not want to replace the value.<br>&gt;&gt;<br>&gt;<br>&gt; I have a somewhat similar requirement, but I'm curious about this
<br>&gt; specific<br>&gt; approach.&nbsp;&nbsp;It sounds as if an object may go into the cache with a<br>&gt; given key,<br>&gt; but in some scenarios if that key is already in use, that object<br>&gt; would use a<br>&gt; different key in the cache.&nbsp;&nbsp;Is that accurate?
<br>&gt;<br>&gt; This sound as if you might be using the cache as a queue or<br>&gt; something to<br>&gt; delineate prioritization or ordering.<br>&gt;<br>&gt; I know this doesn't resolve the particular add/delete/add scenario,
<br>&gt; but I'm<br>&gt; curious about the requirements side.<br>&gt;<br>&gt; cheers,<br>&gt; j<br><br><br><br>m a t t h e w&nbsp;&nbsp; g l u b b<br><br>________________________________________________________________________<br>Z Group PLC
<br><br>Tel: +44 (0) 8700 111 173<br>Fax: +44 (0) 8707 051 393<br>Txt: +44 (0) 7800 140 877<br>Web: &lt;<a href="http://www.zgroupplc.com/">http://www.zgroupplc.com/</a>&gt;<br><br>PLEASE NOTE ZGROUP IS NOT LIABLE&nbsp;&nbsp;FOR ANY DAMAGES,&nbsp;&nbsp;MALFUNCTION, OR LOSS
<br>OF DATA,&nbsp;&nbsp;CAUSED AS A RESULT OF FOLLOWING&nbsp;&nbsp;ANY&nbsp;&nbsp;ADVICE&nbsp;&nbsp;ENCLOSED IN THIS<br>EMAIL. ANY CHANGES SHOULD BE CARRIED OUT AT YOUR OWN RISK.<br><br>This&nbsp;&nbsp;email&nbsp;&nbsp;and&nbsp;&nbsp;any&nbsp;&nbsp;files&nbsp;&nbsp;transmitted&nbsp;&nbsp;with it are&nbsp;&nbsp;confidential and<br>
intended solely for the use of the individual or entity to whom they are<br>addressed.&nbsp;&nbsp;The opinions&nbsp;&nbsp;expressed in this mail are those of the author<br>and do not necessarily&nbsp;&nbsp;represent the views of the company.&nbsp;&nbsp;If you have
<br>received this email in error please notify &lt;<a href="mailto:service@zgroupplc.com">service@zgroupplc.com</a>&gt;<br><br><br><br><br><br>------------------------------<br><br>Message: 6<br>Date: Wed, 11 Jan 2006 13:23:53 -0500
<br>From: Greg Whalin &lt;<a href="mailto:gwhalin@meetup.com">gwhalin@meetup.com</a>&gt;<br>Subject: Re: Deletes Are Driving Me Crazy<br>To: Matthew Glubb &lt;<a href="mailto:matt@zgroupplc.com">matt@zgroupplc.com</a>&gt;
<br>Cc: <a href="mailto:memcached@lists.danga.com">memcached@lists.danga.com</a><br>Message-ID: &lt;<a href="mailto:43C54D39.3050805@meetup.com">43C54D39.3050805@meetup.com</a>&gt;<br>Content-Type: text/plain; charset=UTF-8; format=flowed
<br><br>This sounds like something already brought up in the list some time back.<br><br><a href="http://lists.danga.com/pipermail/memcached/2004-July/thread.html">http://lists.danga.com/pipermail/memcached/2004-July/thread.html
</a><br><br>Check for subj: &quot;Add fails after delete&quot;<br><br>Seems it was supposed to have been fixed?<br><br>gw<br><br>Matthew Glubb wrote:<br>&gt; Okay, I guess I can expand a little :)<br>&gt;<br>&gt; You are right to guess that I am using memcache as a queue of sorts.
<br>&gt; It's network related.<br>&gt;<br>&gt; Each client has a maximum of N key/value pairs in the memcache.<br>&gt; Multiple, concurrent requests may be arriving from the same client.<br>&gt; Every client uses the same key prefix for all of there keys ie.
<br>&gt; prefix_[0 to N-1]. If a client tries to overwrite one of those key/<br>&gt; value pairs once they have been assigned the request is denied, hence<br>&gt; the requirement for using add rather than set. If a client session
<br>&gt; ends, all N key/value pairs should be deleted. If the same client&nbsp;&nbsp;then<br>&gt; starts another session they should be able to recreate up to N<br>&gt; key/value pairs using the same key names but containing different&nbsp;&nbsp;values.
<br>&gt;<br>&gt; I have multiple red hat boxes running lighttpd and load-balanced fast-<br>&gt; cgi php 5.0.5 modules with John's mcache extension 1.2.0 beta10<br>&gt; compiled against libmemcache-1.4.0.b9. Memcached is version 
1.1.12.<br>&gt;<br>&gt; Sometimes it works, sometimes it doesn't. It seems to me that deleted<br>&gt; keys are not always deleted 'straightaway'.<br>&gt;<br>&gt; Matt<br>&gt;<br>&gt; On 11 Jan 2006, at 17:24, Jeff Rodenburg wrote:
<br>&gt;<br>&gt;&gt; On 1/11/06, Matthew Glubb &lt;<a href="mailto:matt@zgroupplc.com">matt@zgroupplc.com</a>&gt; wrote:<br>&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; I simply wish to be able to delete a key that has a zero expiry
<br>&gt;&gt;&gt; period and then immediately be able to add a key of the same name.<br>&gt;&gt;&gt; The reason that I cannot use set is because if it already exists in<br>&gt;&gt;&gt; the cache I do not want to replace the value.
<br>&gt;&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; I have a somewhat similar requirement, but I'm curious about this<br>&gt;&gt; specific<br>&gt;&gt; approach.&nbsp;&nbsp;It sounds as if an object may go into the cache with a<br>&gt;&gt; given key,
<br>&gt;&gt; but in some scenarios if that key is already in use, that object<br>&gt;&gt; would use a<br>&gt;&gt; different key in the cache.&nbsp;&nbsp;Is that accurate?<br>&gt;&gt;<br>&gt;&gt; This sound as if you might be using the cache as a queue or&nbsp;&nbsp;something to
<br>&gt;&gt; delineate prioritization or ordering.<br>&gt;&gt;<br>&gt;&gt; I know this doesn't resolve the particular add/delete/add scenario,<br>&gt;&gt; but I'm<br>&gt;&gt; curious about the requirements side.<br>&gt;&gt;
<br>&gt;&gt; cheers,<br>&gt;&gt; j<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt; m a t t h e w&nbsp;&nbsp; g l u b b<br>&gt;<br>&gt; ________________________________________________________________________<br>&gt; Z Group PLC<br>&gt;<br>
&gt; Tel: +44 (0) 8700 111 173<br>&gt; Fax: +44 (0) 8707 051 393<br>&gt; Txt: +44 (0) 7800 140 877<br>&gt; Web: &lt;<a href="http://www.zgroupplc.com/">http://www.zgroupplc.com/</a>&gt;<br>&gt;<br>&gt; PLEASE NOTE ZGROUP IS NOT LIABLE&nbsp;&nbsp;FOR ANY DAMAGES,&nbsp;&nbsp;MALFUNCTION, OR LOSS
<br>&gt; OF DATA,&nbsp;&nbsp;CAUSED AS A RESULT OF FOLLOWING&nbsp;&nbsp;ANY&nbsp;&nbsp;ADVICE&nbsp;&nbsp;ENCLOSED IN THIS<br>&gt; EMAIL. ANY CHANGES SHOULD BE CARRIED OUT AT YOUR OWN RISK.<br>&gt;<br>&gt; This&nbsp;&nbsp;email&nbsp;&nbsp;and&nbsp;&nbsp;any&nbsp;&nbsp;files&nbsp;&nbsp;transmitted&nbsp;&nbsp;with it are&nbsp;&nbsp;confidential and
<br>&gt; intended solely for the use of the individual or entity to whom they are<br>&gt; addressed.&nbsp;&nbsp;The opinions&nbsp;&nbsp;expressed in this mail are those of the author<br>&gt; and do not necessarily&nbsp;&nbsp;represent the views of the company.&nbsp;&nbsp;If you have
<br>&gt; received this email in error please notify &lt;<a href="mailto:service@zgroupplc.com">service@zgroupplc.com</a>&gt;<br>&gt;<br>&gt;<br>&gt;<br><br><br><br>------------------------------<br><br>_______________________________________________
<br>memcached mailing list<br><a href="mailto:memcached@lists.danga.com">memcached@lists.danga.com</a><br><a href="http://lists.danga.com/mailman/listinfo/memcached">http://lists.danga.com/mailman/listinfo/memcached</a><br>
<br><br>End of memcached Digest, Vol 18, Issue 8<br>****************************************<br></blockquote></div><br>