[Xapian-discuss] empty FD after reopen since version 1.2.16
Olly Betts
olly at survex.com
Tue Apr 28 06:40:25 BST 2015
On Mon, Apr 27, 2015 at 02:23:25PM +0200, matthias lay wrote:
> after upgrading xapian I encountered the same problem as described in
> ticket
> #645 Read block errors after reopen()
>
> in our setup its 100% reproducible after each reopen(). I downgraded
> again and it seems the problem occurs in Version 1.2.16 and above.
> in <=1.2.15 everything works fine without seeing this error once.
I suspect this commit fixes your issue - you can probably just apply
the chert parts to 1.2.x easily, though I've not tried to backport it
yet:
http://trac.xapian.org/changeset/1900eca6d325e9185b9f9f5c75a4a4a545616d7f/git
Thanks for narrowing down the release which introduced this - the relevant
change in 1.2.16 is presumably this one:
| * Reuse a cursor for reading values from valuestreams rather than creating
| a new one each time. This can dramatically reduce the number of blocks
| redundantly reread when sorting by value. The rereads will generally get
| served from VM cache, but there's still an overhead to that.
Before that we just created a cursor each time, so the underlying
cursor bug wouldn't be triggered in this case.
Cheers,
Olly
More information about the Xapian-discuss
mailing list