sapling/eden/mononoke/mercurial
Mark Thomas 5c95bf6be2 mutation_store: make separate requests by primordial and successor
Summary:
D22206317 (9a6ed4b6ca) added requesting of predecessor information for suspected primordials
by the successor ID.  This allows recovery of earlier predecessors when partial
data upload resulted in the history of a commit being extended backwards.

Unfortunately, while the individual requests are fast, the combined request
using `OR` in SQL ended up being very slow for some requests.

Separate out the requests at the application level, and aggregate the results
by concatenating them.  `collect_entries` already handles duplicates should any
arise.

Most of the time the successor query will very quickly return no rows, as
it only matters when history is extended backwards, which is expected to be
rare.

Reviewed By: ikostia

Differential Revision: D22456062

fbshipit-source-id: 1e6094b4ac1590a5824e9ae6ef48468766560188
2020-07-09 09:21:01 -07:00
..
bundles mononoke/{hgproto,mercurial_bundles}: eliminate O(N^2) behavior in decoding 2020-07-08 08:07:13 -07:00
mutation mutation_store: make separate requests by primordial and successor 2020-07-09 09:21:01 -07:00
revlog fix unused dependencies breakages 2020-06-19 06:49:04 -07:00
types Regenerate all Cargo.tomls after upgrade to futures 0.3.5 2020-07-06 20:49:43 -07:00