Tantivy is a full-text search engine library inspired by Apache Lucene and written in Rust
Tantivy 0.22 will be able to read indices created with Tantivy 0.21.
get_docids_for_value_range
to panic. #2295(@fulmicoton)Field
in FilterCollector #2196(@PSeitz)Tantivy documents as a trait: Index data directly without converting to tantivy types first #2071(@ChillFish8)
encode some part of posting list as -1 instead of direct values (smaller inverted indices) #2185(@trinity-1686a)
Aggregation
Add ExistsQuery to check documents that have a value #2160(@imotov)
Expose TopDocs::order_by_u64_field again #2282(@ditsuke)
Memory/Performance
QueryParser
Add shared search executor #2312(@MochiXu)
Truncate keys to u16::MAX in term hashmap #2299(@PSeitz)
report if a term matched when warming up posting list #2309(@trinity-1686a)
Support json fields in FuzzyTermQuery #2173(@PingXia-at)
Read list of fields encoded in term dictionary for JSON fields #2184(@PSeitz)
add collect_block to BoxableSegmentCollector #2331(@PSeitz)
expose collect_block buffer size #2326(@PSeitz)
Forward regex parser errors #2288(@adamreichold)
Make FacetCounts defaultable and cloneable. #2322(@adamreichold)
Derive Debug for SchemaBuilder #2254(@GodTamIt)
add missing inlines to tantivy options #2245(@PSeitz)
Full Changelog: https://github.com/quickwit-oss/tantivy/compare/0.21...v0.22.0
FacetCollector
. #2086(@adamreichold)Full Changelog: https://github.com/quickwit-oss/tantivy/compare/0.20.2...0.21
coerce
option for text and numbers types (convert the value instead of returning an error during indexing) #1904 (@PSeitz)date_histogram
aggregation (only fixed_interval
for now) #1900 (@PSeitz)percentiles
aggregations #1984 (@PSeitz)quickwit
to send intermediate results) #1992 (@PSeitz)Searcher
with disabled scoring via EnableScoring::Disabled
#1780 (@shikhar)DatePrecision
to DateTimePrecision
#2051 (@guilload)Full Changelog: https://github.com/quickwit-oss/tantivy/blob/main/CHANGELOG.md
Fixes an issue in the skip list deserialization, which deserialized the byte start offset incorrectly as u32.
get_doc
will fail for any docs that live in a block with start offset larger than u32::MAX (~4GB).
Causes index corruption, if a segment with a doc store file larger 4GB is merged. (@PSeitz)
Hotfix on handling user input for get_docid_for_value_range (@PSeitz)
IN
in queryparser , e.g. field: IN [val1 val2 val3]
#1683 (@trinity-1686a)get_val(u32)
) #1644 (@PSeitz)DateTime
type has been updated to hold timestamps with microseconds precision.
DateOptions
and DatePrecision
have been added to configure Date fields. The precision is used to hint on fast values compression. Otherwise, seconds precision is used everywhere else (i.e terms, indexing) #1396 (@evanxg852000)Searcher
cloneable. (@PSeitz)tantivy::TantivyError
cloneable #1402 (@PSeitz)Full Changelog: https://github.com/quickwit-oss/tantivy/compare/0.18...0.19