HomePhabricator

(stable) Work around workflow blocking error with duplicate "master" refs in…

Description

(stable) Work around workflow blocking error with duplicate "master" refs in "Land Revision"

Summary:
Ref T11823. See PHI68. T11823 has a full description of this issue and a plan to fix it, but the full plan is relatively complicated.

Until that can happen, provide a workaround for the biggest immediate issue, where multiple copies of a ref cursor can cause executeOne() to throw, since it expects a single result. In practice, these copies are always identical so we can just pick the first one.

This will get cleaned up once T11823 is fixed properly.

Test Plan:
Forced the table into a duplicate/ambiguous state, reproduced a similar-looking error:

Screen Shot 2017-09-13 at 12.17.18 PM.png (937×1 px, 152 KB)

Applied the patch, got the "Land" to work as expected:

Screen Shot 2017-09-13 at 12.18.10 PM.png (262×502 px, 25 KB)

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T11823

Differential Revision: https://secure.phabricator.com/D18599