[Xapian-discuss] 100% relevant

Olly Betts olly at survex.com
Tue Aug 17 13:30:15 BST 2004


> OK, I've compiled xapian-core-0.8.1 on the server, and "make check"
> passes all tests.  It does however skip some tests (yellow text) to do
> with stemming, is that normal?

Yes - they'll be the tests that use some large data files which we don't
ship with the source (you can download then from CVS).  But it's apitest
that's of interest here, not stemtest.

> I've asked Ben to run "make check" on the actual compiled directory
> which the binary was installed from, to see if there's something funny
> with that particular version.

Seems unlikely, but worth checking.

> If it isn't the library, any other suggested debugging tips?

Not sure really.  I guess it might be the bindings, or it might be
something you're doing.  Since the perl and php bindings are effectively
separate implementations, it seems unlikely that's the problem (though
not impossible of course).

Hmm, actually there's an easy way to see if this happens from C++ too.
Can you try querying the database with the quest utility from
xapian-examples?

quest -d /path/to/database 'treatment OR centre'

> I can post up the script I'm using to create the database.  I've tried
> with a clean one with only a small amount of data, and I'm getting the
> same problem.

Probably the next place to look.

> Which is the API function which sets or checks what weight system is
> being used?

You'd switch the weighting scheme to boolean using:

Xapian::Enquire::set_weighting_scheme(BoolWeight());

http://www.xapian.org/docs/apidoc/html/classXapian_1_1Enquire.html#a4

I doubt you're doing that accidentally though!

You'd also get sorting by id with this:

Xapian::Enquire::set_sorting(Xapian::valueno(-1), 1);

But again, not something you're likely to call without reason, and then
the weights wouldn't be 0 anyway.

Cheers,
    Olly



More information about the Xapian-discuss mailing list