0.10.0
版本发布时间: 2019-07-11 18:15:15
quickwit-oss/tantivy最新发布版本:0.22.0(2024-04-12 13:05:18)
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. See
TopDocs::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.