[Xapian-tickets] [Xapian] #654: Getting EOF when using get_data() in a remote database
Xapian
nobody at xapian.org
Tue Mar 24 12:37:24 GMT 2015
#654: Getting EOF when using get_data() in a remote database
---------------------------+-----------------------------
Reporter: Kronuz | Owner: olly
Type: defect | Status: assigned
Priority: normal | Milestone: 1.3.3
Component: Backend-Chert | Version: 1.2.18
Severity: normal | Resolution:
Keywords: | Blocked By:
Blocking: | Operating System: All
---------------------------+-----------------------------
Comment (by olly):
I had a look at the "find_entry failed to find any entry at all!" error
and I think I may have spotted a bug which could explain at least some of
this.
If we try to move the cursor to a key which isn't present, we ought to
leave the cursor on the highest key < the request one. And there's a
special item with a "null key" which is always present, so it should
always be possible to leave the cursor positioned on an item. However, it
looks like you can't call `component_of()` on the item with the null key,
but in some situations while positioning the cursor on the key before we
try to.
This almost explains the issue with the negative key length too, except
that I think the key length would be reported as `-2` and not `-3`. I'll
run some tests to check I'm reading the code correctly, and try to resolve
this.
A backtrace of the callstack leading to situation where the key length of
-3 is returned would still be very helpful.
--
Ticket URL: <http://trac.xapian.org/ticket/654#comment:6>
Xapian <http://xapian.org/>
Xapian
More information about the Xapian-tickets
mailing list