[Lxr-dev] Swish-E
Brought to you by:
ajlittoz
From: Arne G. G. <ar...@li...> - 2001-11-21 22:04:23
|
Since someone suggested Swish-E as a replacement for Glimpse, I had a look at this today. I'm extremely impressed. While Swish-E doesn't report line numbers or text excerpts with its results, it is extremely fast at indexing (and searching). I ran 2.4.15pre6 through it in just over 2 minutes. Hooking it into genxref added 20% or somewhat to that, but then you get the LXR backend-abstraction in between there. (So it should work with the CVS backend, but I didn't test that.) I've hooked Swish-E (version 2.1-dev-24) into "genxref" and "search" with relatively little work. The implementation uses the old "one freetext index database per version"-scheme, but could, with relatively little work, have used the "one revision indexed only once regardless of the amount of versions it belongs to"-scheme. I'm not sure if it would be much of a win, but it might be worth looking into sometime. I've kept the glimpse bits in "search" (which was a horrible piece of code, it wasn't even under use strict) in case someone wants to rehook Glimpse into LXR. Glimpse has some advantages, as noted above, so I suppose it is conceivable. Patch follows. Note though, that the way I've implemented this seems to require Swish-E newer than the currently stable 2.0.5. This might or might not be a problem. Anyway, have a look at it. Arne. |