aboutsummaryrefslogtreecommitdiffstats
path: root/odb.h
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2025-11-19 08:50:51 +0100
committerJunio C Hamano <gitster@pobox.com>2025-11-19 17:41:03 -0800
commit9aaba579932781c74f67d6cecddaad59f0daaaef (patch)
tree4f6d5291108a35b571e1315c31750a9386c0d8d9 /odb.h
parent7c188a9e45405ff911b81a5dd9029f4e91fb338e (diff)
downloadgit-9aaba579932781c74f67d6cecddaad59f0daaaef.tar.gz
odb: adopt logic to close object databases
The logic to close an object database is currently contained in the packfile subsystem. That choice is somewhat relatable, as most of the logic really is to close resources associated with the packfile store itself. But we also end up handling object sources and commit graphs, which certainly is not related to packfiles. Move the function into the object database subsystem and rename it to `odb_close()`. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'odb.h')
-rw-r--r--odb.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/odb.h b/odb.h
index 9bb28008b1..71b4897c82 100644
--- a/odb.h
+++ b/odb.h
@@ -170,6 +170,13 @@ struct object_database *odb_new(struct repository *repo);
void odb_clear(struct object_database *o);
/*
+ * Close the object database and all of its sources so that any held resources
+ * will be released. The database can still be used after closing it, in which
+ * case these resources may be reallocated.
+ */
+void odb_close(struct object_database *o);
+
+/*
* Clear caches, reload alternates and then reload object sources so that new
* objects may become accessible.
*/