Skip to content

Commit 6e495be

Browse files
committed
fix(surrealdb): update node embeddings using a more efficient query method
1 parent 35c70d3 commit 6e495be

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

crates/codegraph-graph/src/surrealdb_storage.rs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -613,17 +613,20 @@ impl SurrealDbStorage {
613613
}
614614

615615
for record in records {
616-
let label = format!("node embedding {}", record.id);
617-
let _: Option<JsonValue> = self
616+
self
618617
.db
619-
.update(("nodes", &record.id))
620-
.merge(json!({
621-
"embedding": record.embedding,
622-
"updated_at": record.updated_at,
623-
}))
618+
.query(
619+
"UPDATE type::thing('nodes', $id) SET embedding = $embedding, updated_at = time::now();",
620+
)
621+
.bind(("id", record.id.clone()))
622+
.bind(("embedding", record.embedding.clone()))
624623
.await
625624
.map_err(|e| {
626-
CodeGraphError::Database(format!("Failed to update {}: {}", label, e))
625+
CodeGraphError::Database(format!(
626+
"Failed to update node embedding {}: {}",
627+
record.id,
628+
truncate_surreal_error(&e)
629+
))
627630
})?;
628631
}
629632

0 commit comments

Comments
 (0)