[Xapian-discuss] "Error reading block xxx: got end of file"

Olly Betts olly@survex.com
Tue, 11 May 2004 18:54:47 +0100


On Tue, May 11, 2004 at 01:37:48PM -0400, Eric Ridge wrote:
> Xapian (0.7.5) is spitting out this error on a regular basis:
> 
> org.xapian.errors.DatabaseError: Error reading block 136618: got end of 
> file
>          at 
> org.xapian.XapianJNI.writabledatabase_repalce_document(Native Method)

"repalce"?  Is this retyped, or is there really a typo in the JNI method
name?

>          at 
> org.xapian.WritableDatabase.replaceDocument(WritableDatabase.java:67)
> 
> I don't have a gdb backtrace, only the Java stacktrace.  :(
> 
> What would cause this "got end of file" error?#

Quartz tried to read a block off the end of the Btree file.

> I'd provide more details, but I'm not exactly sure what is relevant.

First thing to do is to run "quartzcheck" on the database to see if the
btree's are consistent.

If they are, I need to be able to reproduce this - if you can come up with
a small C++ example, that'd help a lot.

It's possible it's fixed in 0.8.0 - I can't see anything in the
ChangeLog, but quartz changed in a major way from 0.7.5 to 0.8.0...

Cheers,
  Olly