]> git.ipfire.org Git - thirdparty/git.git/blobdiff - cache-tree.c
cache-tree: use ODB transaction around writing a tree
[thirdparty/git.git] / cache-tree.c
index 65ca99336136f1f50695f06c6b404859b13cc0a3..3441c4930f97787b62840b4147eafabe45b2df9f 100644 (file)
@@ -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)