From: Stephen D. <sd...@gm...> - 2006-05-03 18:56:18
|
On 5/1/06, Zoran Vasiljevic <zv...@ar...> wrote: > zvpb:~/sf/naviserver/nsd zoran$ diff -u cache.c.1.7 cache.c.1.8 > --- cache.c.1.7 2006-05-01 10:07:00.000000000 +0200 > +++ cache.c.1.8 2006-04-19 18:21:18.000000000 +0200 > @@ -36,7 +36,7 @@ > #include "nsd.h" > -NS_RCSID("@(#) $Header: /cvsroot/naviserver/naviserver/nsd/cache.c,v > 1.7 2006/04/15 21:14:57 sdeasey Exp $"); > +NS_RCSID("@(#) $Header: /cvsroot/naviserver/naviserver/nsd/cache.c,v > 1.8 2006/04/18 19:42:16 sdeasey Exp $"); > struct Cache; > @@ -437,9 +437,9 @@ > Ns_CacheUnsetValue(entry); > ePtr->value =3D value; > ePtr->size =3D size; > - if (ttl > 0) { > + if (ttl > 0 || cachePtr->ttl > 0) { > Ns_GetTime(&now); > - Ns_IncrTime(&ePtr->expires, ttl, 0); > + Ns_IncrTime(&ePtr->expires, ttl ? ttl : cachePtr->ttl, 0); > } > cachePtr->currentSize +=3D size; > if (ePtr->cachePtr->maxSize > 0) { > > I have troubles with our code because of the above change. > The 1.7 release works, the 1.8 not. I get following error: > > timeout waiting for update or entry flushed > > when I do [ns_cache_eval ...] > > Now, is this right (and it opens another hole) or is this > wrong? We use: > > ns_cache_create -ttl 600 > ns_cache_eval $cname $key {...} > > When I go and bump the cachetimeout parameter to 60 (default is 3) > the process waits for 60 seconds and throws the same error message. > There's one test for cache entries with a ttl, cache-6.6, which works for m= e. Can you write a test that fails? |