add_column_with_default is implemented in terms of update_column_in_batches, but
update_column_in_batches can be used independently. Neither of these should be
used on the specified large tables, because they will cause issues on large
instances like GitLab.com.
This also ignores the cop for all existing migrations, renaming
AddColumnWithDefaultToLargeTable where appropriate.
Dropping a column and then re-adding it can lead to the application
throwing errors as the column may temporarily not exist. To work around
this we'll reset the various project rows in batches _without_ removing
any columns.