about summary refs log tree commit homepage
path: root/lib/PublicInbox/xh_cidx.h
DateCommit message (Collapse)
2024-05-20xap_helper.h: use khashl.h instead of hsearch(3)
hsearch(3) and friends are just too horrid of APIs and subject to fatal problems due to system-dependent ENTRY.key use of strdup(3). So replace it with khashl (which is a newer, smaller version of the widely-used khash in git.git). We'll also be able to use khashl in the future for the FUSE shim if liburcu isn't available.
2023-12-09xap_helper: support term length limit
This will allow us to use p2q-compatible specifications such as "dfpost7" to only capture blob OIDs which are 7 characters in length (the indexer will always index down to 7 characters)
2023-12-09*search: simplify handling of Xapian term iterators
Xapian has always sorted termlist iterators, so we now: 1) break out of the iterator loop early on non-matches 2) avoid doing sorting ourselves As a result, we'll also favor the wantarray forms of xap_terms and all_terms to preserve sort order in most cases. Confirmed by the Xapian maintainer: <20231201184844.GO4059@survex.com> Link: https://lists.xapian.org/pipermail/xapian-discuss/2023-December/010013.html
2023-11-29xap_helper: implement mset endpoint for WWW, IMAP, etc...
The C++ version will allow us to take full advantage of Xapian's APIs for better queries, and the Perl bindings version can still be advantageous in the future since we'll be able to support timeouts effectively.
2023-11-29xap_helper.h: move cindex endpoints to separate file
It ought to help a bit with organization since xap_helper.h is getting somewhat large and we'll need new endpoints to support WWW, lei, and whatever else that needs to come.