Re: [PATCH 00/20] Read `packed-refs` using mmap()
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 13, 2017, 21:35 UTC
- Message-ID
- <xmqqbmme1dv2.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <cover.1505319366.git.mhagger@alum.mit.edu>
Michael Haggerty <mhagger@alum.mit.edu> writes:
Show 13 quoted lines
> Following lots of work to extract the `packed_ref_store` into a > separate module and decouple it from the `files_ref_store`, it is now > possible to fundamentally change how the `packed-refs` file is read. > > * `mmap()` the whole file rather than `read()`ing it. > > * Instead of parsing the complete file at once into a `ref_cache`, > parse the references out of the file contents on demand. > > * Use a binary search to find, very quickly, the reference or group of > references that needs to be read. Parse *only* those references out > of the file contents, without creating in-memory data structures at > all.
Oooh, juicy and very exciting.
Show 7 quoted lines
> ... > This branch applies on top of mh/packed-ref-transactions. It can also > be obtained from my git fork [1] as branch `mmap-packed-refs`. > > Michael > > [1] https://github.com/mhagger/git
Thanks for working on this. I expect that it will take more than a few hours for me to pick it up, but I am looking forward to it.