1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-19 05:12:41 +01:00

Fix a bad DiffusionCommandEngine parameter from HTTPEngine conversion

Summary:
I converted this call incorrectly in D16092. We should pass the `PhutilURI` object, not the string version of it.

Specifically, this resulted in hitting an error like this if a replica needed synchronization:

```
[2016-08-11 21:22:37] EXCEPTION: (InvalidArgumentException) Argument 1 passed to DiffusionCommandEngine::setURI() must be an instance of PhutilURI, string given, called in...
#0 PhutilErrorHandler::handleError(integer, string, string, integer, array) called at [<phabricator>/src/applications/diffusion/protocol/DiffusionCommandEngine.php:52]
#1 DiffusionCommandEngine::setURI(string) called at [<phabricator>/src/applications/diffusion/protocol/DiffusionRepositoryClusterEngine.php:601]
...
```

Test Plan: Clusterized an observed repository, demoted a node, ran `bin/repository update Rxxx` to update, saw no typehint fatal.

Reviewers: chad

Reviewed By: chad

Differential Revision: https://secure.phabricator.com/D16390
This commit is contained in:
epriestley 2016-08-11 15:07:17 -07:00
parent 5e3efca08a
commit 39d4e21eec

View file

@ -598,7 +598,7 @@ final class DiffusionRepositoryClusterEngine extends Phobject {
->setArgv($argv) ->setArgv($argv)
->setSudoAsDaemon(true) ->setSudoAsDaemon(true)
->setCredentialPHID($repository->getCredentialPHID()) ->setCredentialPHID($repository->getCredentialPHID())
->setURI($repository->getRemoteURI()) ->setURI($repository->getRemoteURIObject())
->newFuture(); ->newFuture();
$future->setCWD($local_path); $future->setCWD($local_path);