From 482a5f8b66cba3a5e69b01b5ca01e601f254ad43 Mon Sep 17 00:00:00 2001 From: Andrew Kane Date: Sun, 4 Jun 2023 10:52:28 -0700 Subject: [PATCH] Added check for NaN --- src/ivfkmeans.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/ivfkmeans.c b/src/ivfkmeans.c index 7bba1e1..268e8f7 100644 --- a/src/ivfkmeans.c +++ b/src/ivfkmeans.c @@ -469,13 +469,16 @@ CheckCenters(Relation index, VectorArray centers) if (centers->length != centers->maxlen) elog(ERROR, "Not enough centers. Please report a bug."); - /* Ensure no infinite values */ + /* Ensure no NaN or infinite values */ for (i = 0; i < centers->length; i++) { vec = VectorArrayGet(centers, i); for (j = 0; j < vec->dim; j++) { + if (isnan(vec->x[j])) + elog(ERROR, "NaN detected. Please report a bug."); + if (isinf(vec->x[j])) elog(ERROR, "Infinite value detected. Please report a bug."); }