[Xapian-discuss] Searching for "blue" gives "Caught unknown exception"

Rod McFarland rod.mcfarland at ubc.ca
Fri Oct 17 17:52:54 BST 2008


Richard Boulton wrote:
> Rod McFarland wrote:
>> Seriously. We're nearing going live to replace dtSearch, except that 
>> searching for pretty
> > much anything gives a regular result, but for some reason the word 
> "blue" by itself gives
> > an error. Searching "red blue" is OK, "blue red" is OK, "brown", 
> "basket", and "yellow"
> > are fine... just "blue" so far. If you could have a look, or if you 
> know that "blue" is
> > a special word somehow, please let me know. The URL is
> > http://cowichan.library.ubc.ca/cgi-bin/omega?P=&DB=calendars2 .
>
> Very odd.  First of all, which version of xapian/omega are you using, 
> and what platform is it running on?  Also, are you using a custom 
> template for performing the query?
>
> Omega will only return that error if an exception is raised which 
> isn't a subclass of Xapian::Error (or a string exception).  The most 
> likely candidates I can think of are a floating point error of some 
> kind, or an out-of-memory (std::badalloc) exception.
>
> I've had a bit of a poke around - the error also occurs for a search 
> for "calendar", I notice.
>
> How big is your database?  If it's fairly small, and you were able to 
> send me a copy of the database (preferably by putting it into an 
> archive, and sending me a URL to download it from - I'm happy to 
> arrange this off-list), I'd be happy to check it for validity.  If you 
> could also send your query template, I'll see if I can reproduce the 
> error locally.
>
It's pretty big (index folder is 190M). I just ran xapian-check on it 
and it turns out that it had an error in the B-tree. The oddness is gone 
since I rebuilt it, but I stupidly erased the old index so I can't help 
out with forensics (unless it happens again, but hopefully it won't).

Thanks,
Rod



More information about the Xapian-discuss mailing list