Tantivy 0.10.0 index format is compatible with the index format in 0.9.0.
- Added an API to easily tweak or entirely replace the
default score. SeeTopDocs::tweak_score
andTopScore::custom_score
(@pmasurel) - Added an ASCII folding filter (@drusellers)
- Bugfix in
query.count
in presence of deletes (@pmasurel) - Added
.explain(...)
inQuery
andWeight
to (@pmasurel) - Added an efficient way to
delete_all_documents
inIndexWriter
(@petr-tik).
All segments are simply removed.
Minor
- Switched to Rust 2018 (@uvd)
- Small simplification of the code.
Calling .freq() or .doc() when .advance() has never been called
on segment postings should panic from now on. - Tokens exceeding
u16::max_value() - 4
chars are discarded silently instead of panicking. - Fast fields are now preloaded when the
SegmentReader
is created. IndexMeta
is now public. (@hntd187)IndexWriter
add_document
,delete_term
.IndexWriter
isSync
, making it possible to use it with aArc<RwLock<IndexWriter>>
.add_document
anddelete_term
can
only require a read lock. (@pmasurel)- Introducing
Opstamp
as an expressive type alias foru64
. (@petr-tik) - Stamper now relies on
AtomicU64
on all platforms (@petr-tik) - Bugfix - Files get deleted slightly earlier
- Compilation resources improved (@fdb-hiroshima)
How to update?
Your program should be usable as is.
Fast fields
Fast fields used to be accessed directly from the SegmentReader
.
The API changed, you are now required to acquire your fast field reader via the
segment_reader.fast_fields()
, and use one of the typed method:
.u64()
,.i64()
if your field is single-valued ;.u64s()
,.i64s()
if your field is multi-valued ;.bytes()
if your field is bytes fast field.