<div class="gmail_extra"><div class="gmail_quote">2012/4/22 Olly Betts <span dir="ltr">&lt;<a href="mailto:olly@survex.com" target="_blank">olly@survex.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Fri, Apr 20, 2012 at 02:17:24PM +0200, Websuche :: Felix Ostmann wrote:<br>
&gt; 2012/4/20 Olly Betts &lt;<a href="mailto:olly@survex.com">olly@survex.com</a>&gt;<br>
&gt;<br>
&gt; &gt; On Thu, Apr 19, 2012 at 03:45:36PM +0200, Websuche :: Felix Ostmann wrote:<br>
</div><div class="im">&gt; &gt; &gt; /path/to/index/20120419010000<br>
&gt; &gt; &gt; /path/to/index/20120419020000<br>
&gt; &gt; &gt; /path/to/index/20120419030000<br>
&gt; &gt; &gt; /path/to/index/default =&gt; /path/to/index/20120419030000<br>
&gt; &gt;<br>
&gt; &gt; Note that using symlinks for this isn&#39;t recommended - Xapian opens the<br>
&gt; &gt; files using the given path, so if it is in the middle of opening the<br>
&gt; &gt; database when you switch the symlink, it&#39;ll try to open half the old<br>
&gt; &gt; one and half the new one, which isn&#39;t good at all.<br>
&gt; &gt;<br>
&gt; &gt; It&#39;s better to use a stub database file instead.<br>
&gt;<br>
&gt; The problem with the symlink is correct, but will only break 1 request when<br>
&gt; the system starts and that also only in theory. If such a open occure, the<br>
&gt; next request will close &amp; open again (because the mtime of the iamchert is<br>
&gt; now newer).<br>
<br>
</div>If requests are serviced in parallel, it can break more than one.  It<br>
isn&#39;t going to be a huge issue if you only switch over the database<br>
hourly, but why suffer it at all when you don&#39;t need to?<br>
<div class="im"><br>
&gt; I cannot follow your meaning of a stub-database, what do you mean?<br>
<br>
</div>The link James provided is good.<br></blockquote><div><br></div><div><div>OK, so one example:</div><div><br></div><div>- create a new database ( /path/to/databases/xapian-index-3 )</div><div>- create a new stub-file in the database directory with absolute file names and without symlinks ( /path/to/databases/xapian-index-3/stub )</div>
<div>- delete and create a default-database symlink to this database ( /path/to/databases/default =&gt; /path/to/databases/xapian-index-3 )</div><div>- check befor every request the modtime of the stub-file in the default-database and if newer close / open the database via stub-file</div>
</div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br>
&gt; &gt; If you destroy all references to the database, it should get closed, so<br>
&gt; &gt; this suggests that either the Perl bindings aren&#39;t keeping track of the<br>
&gt; &gt; references correctly, or there&#39;s an object you have around still with a<br>
&gt; &gt; reference to the Database (keeping an Enquire or MSet or TermIterator or<br>
&gt; &gt; similar will implicitly keep a reference to the database).<br>
&gt;<br>
&gt; Perhaps i missed a reference, but i override the database, enquire and<br>
&gt; queryparser-object with there new one after a new open. No other objects<br>
&gt; should survive there scope.<br>
<br>
</div>It might be a reference tracking bug in the perl bindings, but without<br>
seeing the code it&#39;s hard to say (or find it if that&#39;s the issue).  If<br>
you want to track it down (whether it is in the bindings or your own<br>
code), I&#39;d add a line of code to print out the pointer value after each<br>
&quot;new&quot; of a Xapian object and before each &quot;delete&quot;, and then see if any<br>
don&#39;t match up.<br></blockquote><div><br></div><div>i tried to reproduce it within a small snipit, but all out of scope and object-override destroys works as expected. So perhaps it is really a local problem with my code + Mojolicious. -&gt;close help in my code so i am fine.</div>
<div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Cheers,<br>
    Olly<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><span>Mit freundlichem Gruß</span><br><span>Felix Ostmann</span><br><br><font><span style="font-family:&#39;courier new&#39;,monospace">-----------------------------------------------------------</span><br style="font-family:&#39;courier new&#39;,monospace">
<span style="font-family:&#39;courier new&#39;,monospace">Websuche Search Technology GmbH &amp; Co. KG</span><br style="font-family:&#39;courier new&#39;,monospace"><span style="font-family:&#39;courier new&#39;,monospace">Martinistraße 3, D-49080 Osnabrück, Germany</span><br style="font-family:&#39;courier new&#39;,monospace">
<span style="font-family:&#39;courier new&#39;,monospace">-----------------------------------------------------------</span><br style="font-family:&#39;courier new&#39;,monospace"><span style="font-family:&#39;courier new&#39;,monospace">Tel.: +49 (0) 541 / 40666 0, Fax: +49 (0) 541 / 40666 22</span><br style="font-family:&#39;courier new&#39;,monospace">
<span style="font-family:&#39;courier new&#39;,monospace">Email: <a href="mailto:info@websuche.com" style="color:rgb(17,85,204)" target="_blank">info@websuche.com</a>, Web: <a href="http://www.websuche.com/" style="color:rgb(17,85,204)" target="_blank">www.websuche.com</a></span><br style="font-family:&#39;courier new&#39;,monospace">
<span style="font-family:&#39;courier new&#39;,monospace">-----------------------------------------------------------</span><br style="font-family:&#39;courier new&#39;,monospace"><span style="font-family:&#39;courier new&#39;,monospace">AG Osnabrück - HRA 200252, Ust-IdNr.: DE814737310</span><br style="font-family:&#39;courier new&#39;,monospace">
<span style="font-family:&#39;courier new&#39;,monospace">-----------------------------------------------------------</span><br style="font-family:&#39;courier new&#39;,monospace"><span style="font-family:&#39;courier new&#39;,monospace">Komplementärin: Websuche Search Technology Verwaltungs GmbH</span><br style="font-family:&#39;courier new&#39;,monospace">
<span style="font-family:&#39;courier new&#39;,monospace">AG Osnabrück - HRB 200359, Geschäftsführer: Ansas Meyer</span><br style="font-family:&#39;courier new&#39;,monospace"><span style="font-family:&#39;courier new&#39;,monospace">-----------------------------------------------------------</span><br style="font-family:&#39;courier new&#39;,monospace">
<br style="font-family:&#39;courier new&#39;,monospace"><span style="font-family:&#39;courier new&#39;,monospace">Die in dieser Email enthaltenen Informationen sind vertrau-</span><br style="font-family:&#39;courier new&#39;,monospace">
<span style="font-family:&#39;courier new&#39;,monospace">lich zu behandeln und ausschließlich für den Adressaten be-</span><br style="font-family:&#39;courier new&#39;,monospace"><span style="font-family:&#39;courier new&#39;,monospace">stimmt. Jegliche Veröffentlichung, Verteilung oder sonstige</span><br style="font-family:&#39;courier new&#39;,monospace">
<span style="font-family:&#39;courier new&#39;,monospace">in diesem Zusammenhang stehende Handlung  wird ausdrücklich</span><br style="font-family:&#39;courier new&#39;,monospace"><span style="font-family:&#39;courier new&#39;,monospace">untersagt.</span></font><br>

</div>