v7.1.0-rc.2
Pre-release
Pre-release
What's Changed
New Features 🎉
- feat: clean up data files on failed writes by @wjones127 in #6320
- feat: query with scalar index support fast search ability by @zhangyue19921010 in #6784
- feat: support batch vector queries by @LeoReeYang in #6828
- feat: expose index segments in Python scanner by @hfutatzhanghb in #6872
- feat(namespace-dir): implement table tag operations by @XuQianJin-Stars in #6886
- fix(mem_wal): suppress stale LSM vector-search reads via block-list post-filter by @hamersaw in #6899
- feat(rust): support datafusion expressions for merge insert predicates by @Ar-maan05 in #6934
- feat(mem_wal): local-scoring FTS search for LSM scanner by @touch-of-grey in #6951
- feat: add ICU FTS tokenizer by @Xuanwo in #6956
- feat: support update by _row_id for python and java by @yanghua in #6976
Bug Fixes 🐛
- fix(docs): update java doc url from com.lancedb to org.lance by @HuaHuaY in #6467
- fix: use relaxed recall assertion for HNSW-based indexes by @XuQianJin-Stars in #6620
- fix(mem_wal): build secondary indexes when flushing active memtable by @hamersaw in #6901
- fix(index): skip scalar index optimize when no unindexed fragments by @zhangyue19921010 in #6905
- fix(mem_wal): eliminate fresh-tier stale reads (dedup-on-scan + deletion-vector-on-flush) by @hamersaw in #6929
- fix: coerce filter expressions before simplifying by @ddupg in #6935
- fix: apply filtered read limit after refine filter by @Xuanwo in #6937
- fix: increase nprobes in test_query_delta_indices for deterministic recall by @Jay-ju in #6953
- fix(index): clean up IVF shuffler temp dir after index build by @geserdugarov in #6957
- fix(java): rename DatasetDelta JNI bindings to match Java declarations by @LuciferYang in #6963
- fix: apply fragment-bitmap allow-list to stable-row-id deletion mask by @ragnorc in #6965
- fix(encoding): handle u16 num_levels overflow in miniblock List encoding by @touch-of-grey in #6989
- fix(encoding): backport corruption-safety fixes to release/v7.1 by @Xuanwo in #8156
Documentation 📚
- docs: add new index page for integrations and fix broken build by @prrao87 in #6915
- docs: fix preview pylance install instructions by @prrao87 in #6931
Performance Improvements 🚀
- perf: use roaring's range iter to speedup mask_to_offset_ranges by @westonpace in #6871
- perf(fts): lazy-load PostingListReader metadata by @wkalt in #6873
- perf: fix very long row count times in ivf sampling by @cmccabe in #6930
- perf: avoid extra stat for ranged OpenDAL reads by @Xuanwo in #6942
Other Changes
- refactor(index): use arrow stats for scalar index stats by @HaochengLIU in #6808
- refactor: move mask code into new crate by @westonpace in #6879
- refactor(bench): replace mem_wal_read/vector with focused LSM benchmarks by @touch-of-grey in #6882
- chore: improve lance maintenance path by @vip892766gma in #6943
Full Changelog: release-root/7.1.0-beta.N...v7.1.0-rc.2