phacility/phabricator · error · PhutilArgumentUsageException

Unable to promote "%s" for repository "%s" because this clus

Error message

Unable to promote "%s" for repository "%s" because this cluster already has one or more unambiguous leaders: %s.

What it means

Error "Unable to promote "%s" for repository "%s" because this cluster already has one or more unambiguous leaders: %s." thrown in phacility/phabricator.

Source

Thrown at src/applications/repository/management/PhabricatorRepositoryManagementThawWorkflow.php:273

                  'Repository "%s" has versions on inactive devices. Demote '.
                  '(or reactivate) these devices before promoting a new '.
                  'leader: %s.',
                  $repository->getDisplayName(),
                  $handle_list));
            }

            // Now, make sure there are no outstanding versions on devices with
            // active bindings. These also need to be demoted (or promoting is
            // a mistake or already happened).
            $active = array_select_keys($versions, array_keys($bindings));
            if ($active) {
              $handles = $viewer->loadHandles(array_keys($active));

              $handle_list = iterator_to_array($handles);
              $handle_list = mpull($handle_list, 'getName');
              $handle_list = implode(', ', $handle_list);

              throw new PhutilArgumentUsageException(
                pht(
                  'Unable to promote "%s" for repository "%s" because this '.
                  'cluster already has one or more unambiguous leaders: %s.',
                  $device->getName(),
                  $repository->getDisplayName(),
                  $handle_list));
            }

            PhabricatorRepositoryWorkingCopyVersion::updateVersion(
              $repository->getPHID(),
              $device->getPHID(),
              0);

            echo tsprintf(
              "%s\n",
              pht(
                'Promoted "%s" to become a leader for "%s".',
                $device->getName(),

View on GitHub (pinned to 5720a38cfe)

When it happens

Trigger: Thrown at src/applications/repository/management/PhabricatorRepositoryManagementThawWorkflow.php:273 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of phacility/phabricator@5720a38cfe (2026-08-21). Data as JSON: /api/errors/2fb4391384e3d64c. Report an issue: GitHub.