mirror of
https://github.com/pgvector/pgvector.git
synced 2026-07-14 16:46:54 +08:00
Switched to VectorArraySet for NormCenters [skip ci]
This commit is contained in:
@@ -105,12 +105,8 @@ NormCenters(const IvfflatTypeInfo * typeInfo, Oid collation, VectorArray centers
|
|||||||
{
|
{
|
||||||
Datum center = PointerGetDatum(VectorArrayGet(centers, j));
|
Datum center = PointerGetDatum(VectorArrayGet(centers, j));
|
||||||
Datum newCenter = IvfflatNormValue(typeInfo, collation, center);
|
Datum newCenter = IvfflatNormValue(typeInfo, collation, center);
|
||||||
Size size = VARSIZE_ANY(DatumGetPointer(newCenter));
|
|
||||||
|
|
||||||
if (size > centers->itemsize)
|
VectorArraySet(centers, j, DatumGetPointer(newCenter));
|
||||||
elog(ERROR, "safety check failed");
|
|
||||||
|
|
||||||
memcpy(DatumGetPointer(center), DatumGetPointer(newCenter), size);
|
|
||||||
MemoryContextReset(normCtx);
|
MemoryContextReset(normCtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user