-
epriestley authored
Summary: Fixes T13192. See PHI1015. When you deactivate a repository, we currently stop serving it. This creates a problem for intracluster sync, since new nodes can't sync it. If nothing else, this means that if you "ship of theseus" your cluster and turn nodes over one at a time, you will eventually lose the entire repository. Since that's clearly a bad outcome, support sync. Test Plan: Testing this requires a "real" cluster, so I mostly used `secure`. I deactivated rGITTEST and ran this on `secure002`: ``` ./bin/repository thaw --demote secure002.phacility.net --force GITTEST && ./bin/repository update GITTEST ``` Before the patch, this failed: ``` [2019-01-31 19:40:37] EXCEPTION: (CommandException) Command failed with error #128! COMMAND git fetch --prune -- 'ssh://172.30.0.64:22/diffusion/GITTEST/' '+refs/*:refs/*' STDOUT (empty) STDERR Warning: Permanently added '172.30.0.64' (RSA) to the list of known hosts. phabricator-ssh-exec: This repository ("rGITTEST") is not available over SSH. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. ``` After applying (a similar patch to) this patch to `secure001`, the sync worked. I'll repeat this test with the actual patch once this deploys to `secure`. Reviewers: amckinley Reviewed By: amckinley Maniphest Tasks: T13192 Differential Revision: https://secure.phabricator.com/D20077
f3e154eb