[PATCH v5 05/14] cache-tree: use ODB transaction around writing a tree
- From
- Neeraj Singh via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Mar 30, 2022, 05:05 UTC
- Message-ID
- <83fa4a5f3a5c79fa814932c0705867ff16a584c7.1648616734.git.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.1134.v5.git.1648616734.gitgitgadget@gmail.com>
From: Neeraj Singh <neerajsi@microsoft.com>
Take advantage of the odb transaction infrastructure around writing the cached tree to the object database.
Signed-off-by: Neeraj Singh <neerajsi@microsoft.com> --- cache-tree.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/cache-tree.c b/cache-tree.c index 6752f69d515..8c5e8822716 100644 --- a/cache-tree.c +++ b/cache-tree.c @@ -3,6 +3,7 @@ #include "tree.h" #include "tree-walk.h" #include "cache-tree.h" +#include "bulk-checkin.h" #include "object-store.h" #include "replace-object.h" #include "promisor-remote.h" @@ -474,8 +475,10 @@ int cache_tree_update(struct index_state *istate, int flags) trace_performance_enter(); trace2_region_enter("cache_tree", "update", the_repository); + begin_odb_transaction(); i = update_one(istate->cache_tree, istate->cache, istate->cache_nr, "", 0, &skip, flags); + end_odb_transaction(); trace2_region_leave("cache_tree", "update", the_repository); trace_performance_leave("cache_tree_update"); if (i < 0)
-- gitgitgadget