Files
git/builtin
Neeraj Singh 425d290ce5 unpack-objects: use the bulk-checkin infrastructure
The unpack-objects functionality is used by fetch, push, and fast-import
to turn the transfered data into object database entries when there are
fewer objects than the 'unpacklimit' setting.

By enabling an odb-transaction when unpacking objects, we can take advantage
of batched fsyncs.

Here are some performance numbers to justify batch mode for
unpack-objects, collected on a WSL2 Ubuntu VM.

Fsync Mode | Time for 90 objects (ms)
-------------------------------------
       Off | 170
  On,fsync | 760
  On,batch | 230

Note that the default unpackLimit is 100 objects, so there's a 3x
benefit in the worst case. The non-batch mode fsync scales linearly
with the number of objects, so there are significant benefits even with
smaller numbers of objects.

Signed-off-by: Neeraj Singh <neerajsi@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-04-06 13:13:26 -07:00
..
2022-02-25 15:47:36 -08:00
2022-02-25 15:47:35 -08:00
2022-02-18 11:21:46 -08:00
2022-02-17 16:25:05 -08:00
2022-02-25 15:47:36 -08:00
2021-10-28 09:57:09 -07:00
2021-02-25 16:43:30 -08:00
2022-03-13 22:56:16 +00:00
2022-02-09 14:21:00 -08:00
2022-02-25 15:47:36 -08:00
2022-03-09 13:38:24 -08:00
2022-02-25 15:47:36 -08:00
2021-04-14 13:47:21 -07:00
2021-09-28 10:31:02 -07:00
2022-01-03 16:24:15 -08:00
2022-02-25 15:47:35 -08:00
2022-03-06 21:25:32 -08:00
2022-02-25 15:47:36 -08:00
2022-01-10 11:52:56 -08:00
2022-02-11 10:06:41 -08:00
2021-11-03 13:25:36 -07:00
2022-03-06 21:25:31 -08:00