Skip to content

v0.1.1

Choose a tag to compare

@Karthik777 Karthik777 released this 25 Oct 05:22
  • A filter is checked one window of candidates at a time, with the candidates looked up by rowid (VALUES with CROSS JOIN). A filter with an indexed subquery, such as vishalakshi's document-kind filter, no longer costs a scan of the rows it selects for each window.
  • A window over 1/128 of the rows (at least 1,024) reads every passing rowid once and checks the rest in memory.
  • The HNSW index file is read the first time a search uses it, not each time the vectors are read. litesearch passes ann=0 and never reads it.
one query, 181,290-chunk vault, k = 30 litesearch scan adhara 0.1.0 adhara 0.1.1
one document kind (6,727 rows pass) 3.9 ms 12.9 ms 7.3 to 7.7 ms
three document kinds (78,710 rows pass) 44.8 ms 2.8 ms 3.0 to 3.3 ms
page <= 2 (125,107 rows pass) 82.5 ms 4.7 ms 3.0 to 3.1 ms

Swift: .package(url: "https://github.com/vedicreader/adhara", from: "0.1.1") downloads AdharaCore.xcframework.zip from this release.

Full Changelog: v0.1.0...v0.1.1