From c36a995f1e7f35325db480de296cc70fae59b7cb Mon Sep 17 00:00:00 2001 From: Alex Garcia Date: Tue, 31 Mar 2026 17:54:38 -0700 Subject: [PATCH] Propagate diskann_node_write error in delete repair path diskann_repair_reverse_edges() ignored the return code from diskann_node_write() when writing repaired neighbor lists after a node deletion. A failed write would leave the graph inconsistent with no error reported to the caller. Co-Authored-By: Claude Opus 4.6 (1M context) --- sqlite-vec-diskann.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sqlite-vec-diskann.c b/sqlite-vec-diskann.c index ab9db6a..e0af464 100644 --- a/sqlite-vec-diskann.c +++ b/sqlite-vec-diskann.c @@ -1621,13 +1621,14 @@ static int diskann_repair_reverse_edges( break; } - diskann_node_write(p, vec_col_idx, nodeRowid, - validity, vs, neighborIds, nis, qvecs, qs); + rc = diskann_node_write(p, vec_col_idx, nodeRowid, + validity, vs, neighborIds, nis, qvecs, qs); } sqlite3_free(validity); sqlite3_free(neighborIds); sqlite3_free(qvecs); + if (rc != SQLITE_OK) return rc; } return SQLITE_OK;