SQL Server 2019 Standard Edition
ALTER TABLE CommunicationsRecipient ADD CausedUnsubscribe Bit NOT NULL DEFAULT 0;
I had a 3rd party software upgrade that failed on an Alter Table Add column statement on a 45 million row table. The Upgrade has a built-in 6 minute timeout so any tSQL that runs for 6 minutes will be aborted. My workaround was to rename the table and Alter it(25 minutes), create a new replacement table, rerun the upgrade against this new empty table, Delete the new empty table, and then change the name of the renamed-Altered table back to the original name.
I think that the reason that the Alter Table Add Column with Default Value takes 25 minutes is because we use Standard Edition and that it would be almost instantaneous on Enterprise Edition. But I need to be sure before presenting the option of going from the Standard Edition to Enterprise which costs quite a bit more. Does the above tsql statement operate differently on 2019 Standard and 2019 Enterprise? Does any of the newer Standard Editions run this tSQL statement the same way as on the Enterprise Edition? .... Using sys.system_internals_partition_columns.is_nullable/default_value?