Two concurrent fetches can occur from the same peer, while also being
for a different set of references. This was seen in the
test_outdated_sigrefs test. Alice would have an ongoing fetch from
Eve, and concurrently, Eve will create a new issue – thus creating a
new RefsAt message – and Alice would attempt to fetch this.
The previous logic would only check that Alice is fetching from Eve
and ignore the new updates – meaning the test could fail. However, if
the RefsAt are checked then the other fetch can be recognised as
new, and queue it.
Two concurrent fetches can occur from the same peer, while also being
for a different set of references. This was seen in the
test_outdated_sigrefs test. Alice would have an ongoing fetch from
Eve, and concurrently, Eve will create a new issue – thus creating a
new RefsAt message – and Alice would attempt to fetch this.
The previous logic would only check that Alice is fetching from Eve
and ignore the new updates – meaning the test could fail. However, if
the RefsAt are checked then the other fetch can be recognised as
new, and queue it.
Rebase.