Revert "Fixed repairing graph entry point"

This reverts commit f27ac1e338.
This commit is contained in:
Andrew Kane
2023-08-04 16:30:29 -07:00
parent 89835d394e
commit 4f4f444396

View File

@@ -846,22 +846,15 @@ HnswInsertElement(HnswElement element, HnswElement entryPoint, Relation index, F
HnswElement dup; HnswElement dup;
BlockNumber *skipPage = vacuuming ? &element->neighborPage : NULL; BlockNumber *skipPage = vacuuming ? &element->neighborPage : NULL;
OffsetNumber *skipOffno = vacuuming ? &element->neighborOffno : NULL; OffsetNumber *skipOffno = vacuuming ? &element->neighborOffno : NULL;
bool removeEntryPoint;
HnswCandidate *entryCandidate;
/* Get entry point and level */ /* Get entry point and level */
if (entryPoint != NULL) if (entryPoint != NULL)
{ {
entryCandidate = EntryCandidate(entryPoint, q, index, procinfo, collation, true); ep = lappend(ep, EntryCandidate(entryPoint, q, index, procinfo, collation, true));
ep = lappend(ep, entryCandidate);
entryLevel = entryPoint->level; entryLevel = entryPoint->level;
removeEntryPoint = vacuuming && list_length(entryPoint->heaptids) == 0;
} }
else else
{
entryLevel = -1; entryLevel = -1;
removeEntryPoint = false;
}
for (int lc = entryLevel; lc >= level + 1; lc--) for (int lc = entryLevel; lc >= level + 1; lc--)
{ {
@@ -877,8 +870,6 @@ HnswInsertElement(HnswElement element, HnswElement entryPoint, Relation index, F
int lm = GetLayerM(m, lc); int lm = GetLayerM(m, lc);
w = SearchLayer(q, ep, efConstruction, lc, index, procinfo, collation, true, skipPage, skipOffno); w = SearchLayer(q, ep, efConstruction, lc, index, procinfo, collation, true, skipPage, skipOffno);
if (removeEntryPoint)
w = list_delete_ptr(w, entryCandidate);
newNeighbors[lc] = SelectNeighbors(w, lm, lc, procinfo, collation, NULL); newNeighbors[lc] = SelectNeighbors(w, lm, lc, procinfo, collation, NULL);
ep = w; ep = w;
} }