Page MenuHomePhabricator

Detect replicating masters and fatal (also, warn on nonreplicating replicas)
ClosedPublic

Authored by epriestley on Nov 21 2016, 3:59 PM.
Tags
None
Referenced Files
F13982647: D16904.diff
Sun, Oct 20, 12:53 AM
F13977687: D16904.diff
Oct 18 2024, 7:35 PM
F13964643: D16904.diff
Oct 15 2024, 9:12 PM
F13955845: D16904.diff
Oct 14 2024, 3:11 AM
F13955833: D16904.id.diff
Oct 14 2024, 3:09 AM
F13955828: D16904.id40693.diff
Oct 14 2024, 3:08 AM
F13955814: D16904.id40702.diff
Oct 14 2024, 3:05 AM
Unknown Object (File)
Oct 7 2024, 2:04 AM
Subscribers
None

Details

Summary

Ref T10759. Check master/replica status during startup.

After D16903, this also means that we check this status after a database comes back online after being unreachable.

If a master is replicating, fatal (since this can do a million kinds of bad things).

If a replica is not replicating, warn (this just means the replica is behind so some data is at risk).

Also: if your masters were actually configured properly (mine weren't until this change detected it), we would throw away patches as we applied them, so they would only apply to the first master. Instead, properly apply all migration patches to all masters.

Test Plan
  • Started Phabricator with a replicating master, got a fatal.
  • Stopped replication on a replica, got a warning.
  • With two non-replicating masters, upgraded storage.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

epriestley retitled this revision from to Detect replicating masters and fatal (also, warn on nonreplicating replicas).
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
chad edited edge metadata.
This revision is now accepted and ready to land.Nov 21 2016, 4:53 PM
This revision was automatically updated to reflect the committed changes.