Re: [PATCH v2 3/7] update-index: use the bulk-checkin infrastructure
On Sun, Mar 20 2022, Neeraj Singh via GitGitGadget wrote:
Show 39 quoted lines
> From: Neeraj Singh <neerajsi@microsoft.com>
>
> The update-index functionality is used internally by 'git stash push' to
> setup the internal stashed commit.
>
> This change enables bulk-checkin for update-index infrastructure to
> speed up adding new objects to the object database by leveraging the
> batch fsync functionality.
>
> There is some risk with this change, since under batch fsync, the object
> files will be in a tmp-objdir until update-index is complete. This
> usage is unlikely, since any tool invoking update-index and expecting to
> see objects would have to synchronize with the update-index process
> after passing it a file path.
>
> Signed-off-by: Neeraj Singh <neerajsi@microsoft.com>
> ---
> builtin/update-index.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/builtin/update-index.c b/builtin/update-index.c
> index 75d646377cc..38e9d7e88cb 100644
> --- a/builtin/update-index.c
> +++ b/builtin/update-index.c
> @@ -5,6 +5,7 @@
> */
> #define USE_THE_INDEX_COMPATIBILITY_MACROS
> #include "cache.h"
> +#include "bulk-checkin.h"
> #include "config.h"
> #include "lockfile.h"
> #include "quote.h"
> @@ -1110,6 +1111,9 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
>
> the_index.updated_skipworktree = 1;
>
> + /* we might be adding many objects to the object database */
> + plug_bulk_checkin();
> +
Shouldn't this be after parse_options_start()?