MigrationLock
The advisory lock that makes two instances starting at once safe.
It waits rather than giving up on the spot, bounded by lock_timeout - the instance that lost the race should start a moment later, not fail to start. The key comes from the history table's name, so two applications keeping separate histories in one database do not wait for each other.