HomePhabricator

Make two ancient migrations fatal if they affect data

Description

Make two ancient migrations fatal if they affect data

Summary:
Depends on D20106. Ref T6703. Since I plan to change the ExternalAccount table, these migrations (which rely on save()) will stop working.

They could be rewritten to use raw queries, but I suspect few or no installs are affected. At least for now, just make them safe: if they would affect data, fatal and tell the user to perform a more gradual upgrade.

Also remove an ALTER IGNORE TABLE (this syntax was removed at some point) and fix a %Q when adjusting certain types of primary keys.

Test Plan: Ran bin/storage upgrade --no-quickstart --force --namespace test1234 to get a complete migration since the beginning of time.

Reviewers: amckinley

Reviewed By: amckinley

Subscribers: PHID-OPKG-gm6ozazyms6q6i22gyam

Maniphest Tasks: T6703

Differential Revision: https://secure.phabricator.com/D20107