diff --git a/src/hnsw.h b/src/hnsw.h index cde1686..0313f1d 100644 --- a/src/hnsw.h +++ b/src/hnsw.h @@ -168,6 +168,7 @@ typedef struct HnswMetaPageData uint32 efConstruction; BlockNumber entryBlkno; OffsetNumber entryOffno; + int16 entryLevel; BlockNumber insertPage; } HnswMetaPageData; diff --git a/src/hnswutils.c b/src/hnswutils.c index 20b040e..6603289 100644 --- a/src/hnswutils.c +++ b/src/hnswutils.c @@ -919,11 +919,13 @@ UpdateMetaPage(Relation index, bool updateEntry, HnswElement entryPoint, BlockNu { metap->entryBlkno = InvalidBlockNumber; metap->entryOffno = InvalidOffsetNumber; + metap->entryLevel = -1; } else { metap->entryBlkno = entryPoint->blkno; metap->entryOffno = entryPoint->offno; + metap->entryLevel = entryPoint->level; } }