sapling/eden/mononoke/blobrepo
Simon Farnsworth 9a3fbfe311 Make filenodes for merge commits more like unodes and less like Mercurial does
Summary:
Mercurial has a lot of complex logic to try and create the "best" possible filenode for a given merge commit.

However, it works fine with imperfect filenodes, as long as they are semantically correct. Generate imperfect filenodes to speed up data derivation.

We are importing git repos to use here, which have some significantly mergy history; this change both reduces the number of filenodes we end up creating in data derivation, and speeds up data derivation by an order of magnitude overall.

Reviewed By: StanislavGlebik

Differential Revision: D28903515

fbshipit-source-id: 436ca4f43158533b32cf0d41db72228dda2688c3
2021-06-11 04:53:09 -07:00
..
blobrepo_hg rust: revert zstd crates 2021-06-11 04:39:54 -07:00
blobsync rust: revert zstd crates 2021-06-11 04:39:54 -07:00
changeset_fetcher rust: revert zstd crates 2021-06-11 04:39:54 -07:00
common rust: revert zstd crates 2021-06-11 04:39:54 -07:00
errors rust: revert zstd crates 2021-06-11 04:39:54 -07:00
override rust: revert zstd crates 2021-06-11 04:39:54 -07:00
repo_blobstore rust: revert zstd crates 2021-06-11 04:39:54 -07:00
src blobrepo: delete BlobRepo::new_dangerous 2021-04-29 06:11:20 -07:00
test Make filenodes for merge commits more like unodes and less like Mercurial does 2021-06-11 04:53:09 -07:00
Cargo.toml rust: revert zstd crates 2021-06-11 04:39:54 -07:00