<div dir="ltr">Ok: just for reference and to help other googlers with similar problems ;-)<div><br></div><div style>I ended up by coding around the problem. Since I need to do a lot of "bzr missing" commands between often the same branches I wrote a piece of code that caches the revision set for a branch. It does that as follows:</div>
<div style><br></div><div style>1. try to load the cached set of revision IDs from the cache file.</div><div style>2. do a bzr log -r -1 on the branch</div><div style>3. if the loading failed, or if the tip revision of the cached copy differs from the result of the log -r -1: rebuild the cached copy && save the inventory as a local cache file.</div>
<div style><br></div><div style>The cached copy is constructed by doing bzr xmllog --include-merges, reading the result and extracting all revision IDs from it. For some reason, that bzr log is surprisingly fast: just 2 or 3 seconds. So the first time I need the "revision history" for a branch it takes 3 seconds; from then on it just takes < 100ms to load and check the cached result.</div>
<div style><br></div><div style>The "missing" operation was reimplemented by just comparing two of the above "inventories" and checking missing and added revisions, which is a hashset operation which is also very fast.</div>
<div style><br></div><div style>The net result is that for this type of "repeated" missing operation the speedup is huge: for the repeated set of comparisons most actions went from taking 4 minutes to taking 14 seconds.</div>
<div style><br></div><div style>Greetings,</div><div style><br></div><div style>Frits</div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Dec 13, 2012 at 11:00 AM, John Arbash Meinel <span dir="ltr"><<a href="mailto:john@arbash-meinel.com" target="_blank">john@arbash-meinel.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">-----BEGIN PGP SIGNED MESSAGE-----<br>
Hash: SHA1<br>
<br>
</div><div class="im">On 2012-12-12 23:03, Frits Jalvingh wrote:<br>
> Hi John, thanks for answering.<br>
><br>
> I cannot script it internally directly - the application is a Java<br>
> application. And sadly enough I fear I would need way to much<br>
> Python + Bazaar-internals knowledge (I have neither) to code this<br>
> myself, hence my hope there was something already ;-) I checked out<br>
> the extension you mentioned but cannot find out really how to use<br>
> it; I tried<br>
><br>
> jal@cite:~/puzzler-bzr/master/vp/4.0$ bzr history-db-create --db<br>
> test bzr: ERROR: No module named history_db You may need to install<br>
> this Python library separately.<br>
><br>
> And that's it ;-)<br>
><br>
> Frits<br>
<br>
</div>Did you install it in your plugin path as "history_db" rather than<br>
"bzr-history-db" or "bzr_history_db" ?<br>
<div class="im"><br>
John<br>
=:-><br>
-----BEGIN PGP SIGNATURE-----<br>
Version: GnuPG v1.4.12 (Cygwin)<br>
Comment: Using GnuPG with undefined - <a href="http://www.enigmail.net/" target="_blank">http://www.enigmail.net/</a><br>
<br>
</div>iEYEARECAAYFAlDJp00ACgkQJdeBCYSNAAORxgCgsU9UrMh0E5oed/MJ/6BxG4Ei<br>
CMwAoJwdBm6zy3Y1vBosNGqFVx2cgX1n<br>
=z3Ud<br>
-----END PGP SIGNATURE-----<br>
</blockquote></div><br></div>