<p dir="ltr">Thanks for still helping the project.<br>
That helped.</p>
<br><div class="gmail_quote"><div dir="ltr">On Thu, Feb 1, 2018, 09:04 Marcin Kuzminski <<a href="mailto:marcin@python-blog.com">marcin@python-blog.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><img class="m_-5907124652562727066cloudmagic-smart-beacon" src="https://tr.cloudmagic.com/h/v6/emailtag/tag/2.0/1517472263/23208ea609a3d53270dd5e8ba08bc371/2/404e184f97b08329e4f2296649e79a26/340cf1d0f1cb295bcec4fb1c8a658840/bc2288f14859e30d7b09dd14ded4eafc/newton.gif" style="border:0;width:10px;height:10px" width="10" height="10" align="right"><div dir="auto"><span>Hi Dominik,</span><div><span><br></span></div><div><span>The database table is used for invalidation multiple processes. e.g if you run 3 workers via gunicorn each of them will register an entry in cache invalidation. This way if a push occurs in one process others will to invalidate it’s cache.</span></div><div><span><br></span></div><div><span>This is mainly driven by the problem that some caches need to uses memory type which cannot be shared process wise because of serialization problems.</span></div><div><span><br></span></div><div><span>Best,<br></span><br><div id="m_-5907124652562727066cm_footer" class="m_-5907124652562727066cm_footer"><div id="m_-5907124652562727066cm_signature"><div style="font-family:arial,sans-serif;margin:0px;padding:0px;border:0px;font-size:10pt;line-height:inherit;vertical-align:baseline;color:rgb(34,34,34)"><font color="#929292" style="font-family:inherit;font-size:11px">--</font></div><div style="font-family:arial,sans-serif;margin:0px;padding:0px;border:0px;font-size:10pt;line-height:inherit;vertical-align:baseline;color:rgb(34,34,34)"><span style="font-family:Helvetica;margin:0px;padding:0px;border:0px;font-size:11px;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(146,146,146)">Marcin Kuzminski</span></div><div style="font-family:arial,sans-serif;margin:0px;padding:0px;border:0px;font-size:10pt;line-height:inherit;vertical-align:baseline;color:rgb(34,34,34)"><div style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:12.8px;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline"><span style="font-family:Helvetica;margin:0px;padding:0px;border:0px;font-size:11px;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(146,146,146)">RhodeCode, Inc.</span></div><div style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:12.8px;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline"><font color="#999999" style="font-family:inherit"><br style="font-family:inherit"></font></div><div style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:12.8px;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline"><span style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:inherit;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(153,153,153)"><font size="1" style="font-family:inherit">Enterprise Source Code Management. Unified.</font></span></div><div style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:12.8px;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline"><font size="1" style="font-family:inherit"><font color="#999999" style="font-family:inherit">Contact us:</font><font color="#666666" style="font-family:inherit"> </font><a href="https://rhodecode.com/" style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:inherit;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(17,85,204)" target="_blank"><font color="#3d85c6" style="font-family:inherit">Web</font></a><font color="#666666" style="font-family:inherit"> </font><span style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:inherit;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(102,102,102)">•</span><span style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:inherit;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(102,102,102)"> </span><a href="https://twitter.com/rhodecode" style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:inherit;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(17,85,204)" target="_blank"><font color="#3d85c6" style="font-family:inherit">Twitter</font></a><font color="#666666" style="font-family:inherit"> </font></font><font color="#666666" style="font-family:inherit;font-size:x-small">•</font><span style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:x-small;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(102,102,102)"> </span><a href="http://community.rhodecode.com/" style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:x-small;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(17,85,204)" target="_blank"><font color="#3d85c6" style="font-family:inherit">Community</font></a><span style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:x-small;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(102,102,102)"> </span><span style="font-family:inherit;margin:0px;padding:0px;border:0px;font-size:x-small;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(102,102,102)">• </span><font style="font-family:inherit;color:rgb(17,85,204);font-size:x-small"><a href="https://rhodecode.com/join" style="font-family:inherit;margin:0px;padding:0px;border:0px;font-style:inherit;font-variant-caps:inherit;line-height:inherit;vertical-align:baseline;color:rgb(17,85,204)" target="_blank">Slack</a></font></div></div></div></div><span><br></span><div id="m_-5907124652562727066cm_replymail_content_wrap"><div class="m_-5907124652562727066cm_replymail_content_1517472053_wrapper"></div></div></div></div><div dir="auto"><div><div id="m_-5907124652562727066cm_replymail_content_wrap"><div class="m_-5907124652562727066cm_replymail_content_1517472053_wrapper">On Thu, Feb 1, 2018 at 0:50, Dominik Ruf <<a href="mailto:dominikruf@gmail.com" target="_blank">dominikruf@gmail.com</a>> wrote:<br></div></div></div></div><div dir="auto"><div><div id="m_-5907124652562727066cm_replymail_content_wrap"><div class="m_-5907124652562727066cm_replymail_content_1517472053_wrapper"><div id="m_-5907124652562727066cm_replymail_content_1517472053" style="overflow:visible"><blockquote style="margin:0;border-left:#d6d6d6 1px solid;padding-left:10px"><div dir="ltr">Hi all,<div><br></div><div>I'm currently looking at the caching Kallithea does. And I'm a bit...baffled.</div><div>The way I understand it is that first an entry is made to CacheInvalidation to mark a cache invalid,<br></div><div>and later that entry is checked to decide if that cache should be invalidated.</div><div>But why this detour? Why not invalidate the cache directly?</div><div><div>Can somebody explain to me why the invalidation is done via the CacheInvalidation table?</div><br class="m_-5907124652562727066inbox-inbox-Apple-interchange-newline"></div><div>cheers</div><div>Dominik</div></div>
<br></blockquote></div></div></div></div></div><div dir="auto"><div><div id="m_-5907124652562727066cm_replymail_content_wrap"><div class="m_-5907124652562727066cm_replymail_content_1517472053_wrapper"><div id="m_-5907124652562727066cm_replymail_content_1517472053" style="overflow:visible"><blockquote style="margin:0;border-left:#d6d6d6 1px solid;padding-left:10px">_______________________________________________
kallithea-general mailing list
<a href="mailto:kallithea-general@sfconservancy.org" target="_blank">kallithea-general@sfconservancy.org</a>
<a href="https://lists.sfconservancy.org/mailman/listinfo/kallithea-general" target="_blank">https://lists.sfconservancy.org/mailman/listinfo/kallithea-general</a>
</blockquote></div></div></div></div></div></blockquote></div>