apache / apache/lucene

CheckIndex could assert more things about the HNSW graph?

Open
#13,724 1 comment 0 reactions 0 assignees View on GitHub
type:enhancement
Dominant language
Java
Stars
3.6k
Forks
1.4k
Avg merge
2d 11h
Merged PRs (30d)
88

Description

### Description

I came across a spooky comment `// we see repeated neighbor nodes?!` in [this `luceneutil` PR](https://github.com/mikemccand/luceneutil/pull/290/files) and discussed with @msokolov and we realized `CheckIndex` tool could assert things about the HNSW graph like "outgoing neighbor nodes are in order" and "there are no duplicate neighbor nodes".

Maybe there are other "HNSW graph integrity" checks that `CheckIndex` could do?

Contributor guide

Open the contributing guide

Research direction

Start by reading CheckIndex's existing HNSW validation and the linked luceneutil PR, especially the comment about repeated neighbor nodes. Determine which graph-integrity invariants are appropriate beyond neighbor ordering and duplicate detection; done means the scope is agreed and CheckIndex reliably reports violations with coverage for the added checks.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
search
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.