summaryrefslogtreecommitdiff
path: root/include/git2
diff options
context:
space:
mode:
authorMichael Schubert <schu@schu.io>2013-03-25 13:38:43 +0100
committerMichael Schubert <schu@schu.io>2013-03-25 15:45:56 +0100
commitf5e28202cb8d73a444e5a5664420fbe5bec11119 (patch)
tree7e70d1ef6f84451252234097255a0321a21073e2 /include/git2
parent3f21a23cc26cc6fbf84122872acf833de2a287e0 (diff)
downloadlibgit2-f5e28202cb8d73a444e5a5664420fbe5bec11119.tar.gz
opts: allow configuration of odb cache size
Currently, the odb cache has a fixed size of 128 slots as defined by GIT_DEFAULT_CACHE_SIZE. Allow users to set the size of the cache via git_libgit2_opts(). Fixes #1035.
Diffstat (limited to 'include/git2')
-rw-r--r--include/git2/common.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/git2/common.h b/include/git2/common.h
index b8c3e42ce..5318e66b7 100644
--- a/include/git2/common.h
+++ b/include/git2/common.h
@@ -131,6 +131,8 @@ enum {
GIT_OPT_SET_MWINDOW_MAPPED_LIMIT,
GIT_OPT_GET_SEARCH_PATH,
GIT_OPT_SET_SEARCH_PATH,
+ GIT_OPT_GET_ODB_CACHE_SIZE,
+ GIT_OPT_SET_ODB_CACHE_SIZE,
};
/**
@@ -167,6 +169,15 @@ enum {
* - `level` must be GIT_CONFIG_LEVEL_SYSTEM, GIT_CONFIG_LEVEL_GLOBAL,
* or GIT_CONFIG_LEVEL_XDG.
*
+ * opts(GIT_OPT_GET_ODB_CACHE_SIZE):
+ * Get the size of the libgit2 odb cache.
+ *
+ * opts(GIT_OPT_SET_ODB_CACHE_SIZE):
+ * Set the size of the of the libgit2 odb cache. This needs
+ * to be done before git_repository_open is called, since
+ * git_repository_open initializes the odb layer. Defaults
+ * to 128.
+ *
* @param option Option key
* @param ... value to set the option
* @return 0 on success, <0 on failure