SIGN IN SIGN UP

Fixes for poor recall with label filters (#225)

This PR fixes a pair of issues that were observed in benchmarks to cause
poor recall with label filtering in certain cases:
- missing check to preserve edges in pruning containing label
information not covered by other edges (cf. line 6 of Algorithm 3 from
Filtered DiskANN paper)
- missing logic to suppress label-based checks when inserting into the
default start node (resulting in poor recall when no label filter
condition was present)

Testing:
- new sanity check unit test
- validated benchmark runs to be reported in an upcoming blog post

---------

Signed-off-by: tjgreen42 <tj@timescale.com>
Co-authored-by: Matvey Arye <cevian@gmail.com>
T
tjgreen42 committed
a3aab4fbc6e8977d6f1afd2bdd44efa86ea093f8
Parent: a6c9721
Committed by GitHub <noreply@github.com> on 4/15/2025, 10:16:26 PM