From 88dc315e454a695426becf928aef46668f9db0dc Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Sun, 8 Mar 2026 20:36:51 -0300 Subject: server --- lib/management/database.ml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'lib/management/database.ml') diff --git a/lib/management/database.ml b/lib/management/database.ml index e4705e5..08e03b8 100644 --- a/lib/management/database.ml +++ b/lib/management/database.ml @@ -72,7 +72,13 @@ let has_relation db name = (** Add a relation to the database *) let add_relation db ~(relation : Relation.t) = - let relation_hash = Option.get relation.hash in + let relation_hash = match relation.hash with + | Some h -> h + | None -> + let tree = Option.value relation.tree ~default:Merkle.empty in + Hashing.hash_relation ~name:relation.name ~schema:relation.schema ~tree + in + let relation = { relation with hash = Some relation_hash } in let tree = Merkle.insert relation_hash db.tree in let relations = RelationMap.add relation.name relation db.relations in update_state db ~relations ~tree -- cgit v1.2.3