mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-29 18:22:41 +01:00
Correct bin/storage analyze
internal API for cluster environments
Summary: Ref T12819. This worked right in a non-cluster environment, but `bin/storage upgrade` iterates over each master in a partitioned cluster environment. Tweak the API so `bin/storage analyze` targets a single host but `bin/storage upgrade` can hit all the masters. Test Plan: Will run `bin/storage upgrade` in production again. Ran `upgrade` and `analyze` locally, still work fine. Reviewers: chad Reviewed By: chad Maniphest Tasks: T12819 Differential Revision: https://secure.phabricator.com/D18576
This commit is contained in:
parent
a46a9ff165
commit
4cae4a3b76
2 changed files with 6 additions and 4 deletions
|
@ -12,7 +12,8 @@ final class PhabricatorStorageManagementAnalyzeWorkflow
|
||||||
}
|
}
|
||||||
|
|
||||||
public function didExecute(PhutilArgumentParser $args) {
|
public function didExecute(PhutilArgumentParser $args) {
|
||||||
$this->analyzeTables();
|
$api = $this->getSingleAPI();
|
||||||
|
$this->analyzeTables($api);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -143,7 +143,7 @@ abstract class PhabricatorStorageManagementWorkflow
|
||||||
if (!$this->dryRun) {
|
if (!$this->dryRun) {
|
||||||
$should_analyze = (($err == 0) || ($err == 2));
|
$should_analyze = (($err == 0) || ($err == 2));
|
||||||
if ($should_analyze) {
|
if ($should_analyze) {
|
||||||
$this->analyzeTables();
|
$this->analyzeTables($api);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (Exception $ex) {
|
} catch (Exception $ex) {
|
||||||
|
@ -1172,12 +1172,13 @@ abstract class PhabricatorStorageManagementWorkflow
|
||||||
->lock();
|
->lock();
|
||||||
}
|
}
|
||||||
|
|
||||||
final protected function analyzeTables() {
|
final protected function analyzeTables(
|
||||||
|
PhabricatorStorageManagementAPI $api) {
|
||||||
|
|
||||||
// Analyzing tables can sometimes have a significant effect on query
|
// Analyzing tables can sometimes have a significant effect on query
|
||||||
// performance, particularly for the fulltext ngrams tables. See T12819
|
// performance, particularly for the fulltext ngrams tables. See T12819
|
||||||
// for some specific examples.
|
// for some specific examples.
|
||||||
|
|
||||||
$api = $this->getSingleAPI();
|
|
||||||
$conn = $api->getConn(null);
|
$conn = $api->getConn(null);
|
||||||
|
|
||||||
$patches = $this->getPatches();
|
$patches = $this->getPatches();
|
||||||
|
|
Loading…
Reference in a new issue