On Thu, Jun 28, 2007 at 05:23:50PM +0200, Tomasz Jackowiak
wrote:> I'm using Xapian-core 1.0.1 and it seems that xapian-compact is
> reindexing documents' 'docid' even when merging only one
database. I
> don't remember such behavior under version 0.9.9. Is it a feature or a
> bug? I can't find any information about that change.
It's a feature - this is the 1.0.0 NEWS file entry:
* xapian-compact: Now prunes unused docids off the start of each source
database's range of docids.
All document ids in a particular source database are translated by the
same amount - actually renumbering to remove any gaps would be a lot
more expensive, whereas eliminating a gap at the start is almost no
extra work.
If you have a rolling index where old documents are removed after a
while, this is useful even when compacting a single database as it keeps
the document ids small, which means the database ends up a bit smaller.
I can see it could be awkward if the docids are matched to an external
database though. It could be made optional if it's a problem for some
uses.
Cheers,
Olly