Skip to content

in_memory: Fix quadratic run time in snapshot_get_branches.

snapshot.branches is now an ImmutableDict, which is backed by a tuple of tuples; so random accesses now take a linear time instead of a constant time.

This commit replaces random accesses with a single scan of all the items, and does existence checks in a set instead.


Migrated from D3484 (view on Phabricator)

Merge request reports