<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On 31 Mar 2009, at 18:03, Galder Zamarreno wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div><br><br>Manik Surtani wrote:<br><blockquote type="cite">Hello all.<br></blockquote><blockquote type="cite">I have finished my work with the eviction code in Infinispan, here is a summary of what has happened.<br></blockquote><blockquote type="cite"> From a user perspective (including API and configuration) as well as a design overview, please have a look at<br></blockquote><blockquote type="cite"> <a href="http://www.jboss.org/community/docs/DOC-13449">http://www.jboss.org/community/docs/DOC-13449</a><br></blockquote><br>Comment about the config, seeing as expiration is tighly linked to eviction, wouldn't it make more sense for expiration to be a subelement of eviction? i.e.<br><br><eviction strategy="FIFO" wakeupInterval="1000" maxEntries="2000"><br> <expiration lifespan="1000" maxIdle="500" /><br></eviction></div></blockquote><div><br></div><div>The presence of an eviction element will cause a less-efficient DataContainer to be used. Wasteful if you don't really care about eviction and just want to set expiration defaults. And they aren't tightly linked at all, except that the eviction thread would also purge expired data in the container. </div><br><blockquote type="cite"><div>I suppose expiration element attributes are not part of eviction element since they're primarily an optional feature and maxEntries is the main config option?</div></blockquote><div><br></div><div>maxEntries and strategy, yes.</div><br><blockquote type="cite"><div><br><br><blockquote type="cite"> From an implementation perspective, have a look at the srcs of FIFODataContainer and LRUDataContainer. These two classes are where everything happens. The javadocs should explain the details, but in a nutshell you can expect constant time operations for all puts, gets, removes, iterations. :-)<br></blockquote><blockquote type="cite">Feedback on the impls would be handy. :-)<br></blockquote><blockquote type="cite">Cheers<br></blockquote><blockquote type="cite">-- <br></blockquote><blockquote type="cite">Manik Surtani<br></blockquote><blockquote type="cite">Lead, JBoss Cache<br></blockquote><blockquote type="cite"><a href="http://www.jbosscache.org">http://www.jbosscache.org</a><br></blockquote><blockquote type="cite"><a href="mailto:manik@jboss.org">manik@jboss.org</a><br></blockquote><blockquote type="cite">------------------------------------------------------------------------<br></blockquote><blockquote type="cite">_______________________________________________<br></blockquote><blockquote type="cite">infinispan-dev mailing list<br></blockquote><blockquote type="cite"><a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.jboss.org</a><br></blockquote><blockquote type="cite"><a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br></blockquote><br>-- <br>Galder Zamarreņo<br>Sr. Software Maintenance Engineer<br>JBoss, a division of Red Hat<br></div></blockquote></div><br><div apple-content-edited="true"> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-infinispantal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-infinispantal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>--</div><div>Manik Surtani</div><div>Lead, JBoss Cache</div><div><a href="http://www.jbosscache.org">http://www.jbosscache.org</a><br><a href="mailto:manik@jboss.org" target="_blank">manik@jboss.org</a></div><div><br></div></div></span><br class="Apple-interchange-newline"></div></span><br class="Apple-interchange-newline"> </div><br></body></html>