Opened 16 years ago
Closed 16 years ago
#397 closed defect (fixed)
ChertPostListTable::get_doclength skips new documents after flush
| Reported by: | Rich Lane | Owned by: | Olly Betts |
|---|---|---|---|
| Priority: | normal | Milestone: | 1.1.3 |
| Component: | Backend-Chert | Version: | SVN trunk |
| Severity: | normal | Keywords: | |
| Cc: | Blocked By: | ||
| Blocking: | Operating System: | All |
Description
Chert's get_doclength sometimes skips documents, leading to Xapian throwing DocNotFound when retrieving the document for a search result. I've attached a testcase that passes with Flint and fails with Chert. Resetting doclen_pl on every call makes the problem go away, so a workaround might be to just reset it after a flush.
Attachments (1)
Change History (3)
by , 16 years ago
| Attachment: | doclength_after_flush.cc added |
|---|
comment:1 by , 16 years ago
| Milestone: | → 1.1.3 |
|---|---|
| Status: | new → assigned |
| Version: | → SVN trunk |
Marking to fix for 1.1.3.
comment:2 by , 16 years ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
The cursor isn't going to be valid for the new table revision, so resetting doclen_pl on flush() is the appropriate fix, and makes your testcase pass.
Comitted to trunk in r13445. Chert-only, so nothing to backport.
Note:
See TracTickets
for help on using tickets.

doclength_after_flush testcase