Restored collation for consistency [skip ci]

This commit is contained in:
Andrew Kane
2024-04-25 13:46:45 -07:00
parent 38e365ed58
commit 1fdfff7349
5 changed files with 6 additions and 6 deletions

View File

@@ -377,7 +377,7 @@ typedef struct HnswVacuumState
int HnswGetM(Relation index);
int HnswGetEfConstruction(Relation index);
FmgrInfo *HnswOptionalProcInfo(Relation index, uint16 procnum);
Datum HnswNormValue(const HnswTypeInfo * typeInfo, Datum value);
Datum HnswNormValue(const HnswTypeInfo * typeInfo, Oid collation, Datum value);
bool HnswCheckNorm(FmgrInfo *procinfo, Oid collation, Datum value);
Buffer HnswNewBuffer(Relation index, ForkNumber forkNum);
void HnswInitPage(Buffer buf, Page page);

View File

@@ -498,7 +498,7 @@ InsertTuple(Relation index, Datum *values, bool *isnull, ItemPointer heaptid, Hn
if (!HnswCheckNorm(buildstate->normprocinfo, buildstate->collation, value))
return false;
value = HnswNormValue(typeInfo, value);
value = HnswNormValue(typeInfo, buildstate->collation, value);
}
/* Get datum size */

View File

@@ -630,7 +630,7 @@ HnswInsertTuple(Relation index, Datum *values, bool *isnull, ItemPointer heap_ti
if (!HnswCheckNorm(normprocinfo, collation, value))
return;
value = HnswNormValue(typeInfo, value);
value = HnswNormValue(typeInfo, collation, value);
}
HnswInsertTupleOnDisk(index, value, values, isnull, heap_tid, false);

View File

@@ -61,7 +61,7 @@ GetScanValue(IndexScanDesc scan)
/* Fine if normalization fails */
if (so->normprocinfo != NULL)
value = HnswNormValue(so->typeInfo, value);
value = HnswNormValue(so->typeInfo, so->collation, value);
}
return value;

View File

@@ -156,9 +156,9 @@ HnswOptionalProcInfo(Relation index, uint16 procnum)
* Normalize value
*/
Datum
HnswNormValue(const HnswTypeInfo * typeInfo, Datum value)
HnswNormValue(const HnswTypeInfo * typeInfo, Oid collation, Datum value)
{
return DirectFunctionCall1(typeInfo->normalize, value);
return DirectFunctionCall1Coll(typeInfo->normalize, collation, value);
}
/*