HomePhabricator

Add a lock to storage upgrade and adjustment

Description

Add a lock to storage upgrade and adjustment

Summary: Fixes T9715. Adds a MySQL-based lock to ensure that schema migrations are not applied on multiple hosts simultaneously.

Test Plan: Ran ./bin/storage upgrade concurrently. One invocation was successful whilst the other hit a PhutilLockException.

Reviewers: Blessed Reviewers, epriestley

Subscribers: Korvin

Maniphest Tasks: T9715

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