1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-09-21 09:48:47 +02:00
phorge-phorge/src/infrastructure
epriestley d0013d0898 Distinguish between unreachable cluster database hosts and missing MySQL databases
Summary:
Fixes T11577. When we connect to a host and try to select a database which does not exist, we currently treat it as though the host wasn't reachable.

This isn't correct, and prevents storage from being initialized while already in cluster mode, since the "config" database won't exist yet the first time we connect.

Instead, distinguish between `AphrontSchemaQueryException` (thrown on connection if the requested database is not present) and other errors.

Test Plan:
  - Put Phabricator into cluster database mode (`cluster.databases = ...`).
  - Swapped `storage.default-namespace` to force initialization of a new install.
  - Ran `bin/storage upgrade`.
    - Before patch: Immediate fatal about unreachablility.
    - After patch: Database initialized.
  - Also ran initialization steps in tranditional single-host mode (`cluster.databases` empty, `mysql.host` configured).

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T11577

Differential Revision: https://secure.phabricator.com/D16489
2016-09-02 08:23:21 -07:00
..
cluster Distinguish between unreachable cluster database hosts and missing MySQL databases 2016-09-02 08:23:21 -07:00
contentsource Redesign Config Application 2016-08-29 15:49:49 -07:00
customfield Improve performance when constructing custom fields for objects 2016-07-31 11:25:58 -07:00
daemon Updated the docs so chatbots can use the Conduit API 2016-08-24 19:05:30 -04:00
diff Improve "thread" rendering of unusually-shaped graphs 2016-07-01 11:15:24 -07:00
edges Log and continue when trying to destroy edges with no edge definition 2016-06-23 06:45:17 -07:00
env Distinguish between unreachable cluster database hosts and missing MySQL databases 2016-09-02 08:23:21 -07:00
events Modernize Hovercard implementation 2015-12-24 12:18:28 -08:00
graph Fix task graph fatal for graphs containing restricted tasks 2016-07-29 07:21:45 -07:00
internationalization Provide a workflow to restart Harbormaster builds 2016-09-02 13:32:02 +00:00
javelin Extend from Phobject 2015-06-15 18:02:27 +10:00
lint/linter Linter fixes 2015-12-03 07:44:23 +11:00
log Extend from Phobject 2015-06-15 18:02:27 +10:00
management Modularize content sources 2016-03-26 11:59:45 -07:00
markup When commits have a "rewritten" hint, try to show that in handles in other applications 2016-08-24 09:35:19 -07:00
query Make limits and ranges work better with Calendar event queries 2016-07-13 15:39:00 -07:00
sms Various linter fixes 2015-08-11 22:36:55 +10:00
ssh phtize all the things 2015-05-22 21:16:39 +10:00
storage Provide "--output" flags for "bin/storage renamespace" 2016-08-17 09:04:14 -07:00
syntax Pass the new default syntax highlighting map to the remarkup engine 2016-05-05 02:51:19 -07:00
testing Make caches misses throw by default intead of inline-generating 2016-06-05 08:51:54 -07:00
time Make translation, timezone and pronoun into real settings 2016-06-02 06:29:47 -07:00
util Make cluster repositories more resistant to freezing 2016-04-25 11:37:31 -07:00
PhabricatorEditor.php Mark some strings for translation 2015-06-09 23:06:52 +10:00