The ALTER TABLE SET N_DISTINCT command acquires ShareUpdateExclusiveLock table lock . Following are the locks ALTER TABLE SET N_DISTINCT acquires, the commands that are allowed to run concurrently with its lock ShareUpdateExclusiveLock and the commands that conflict with it. The list also includes the conflicting row locks if applicable
Commands concurrently allowed on the table with ALTER TABLE SET N_DISTINCT
e.g. If tx1 does a ALTER TABLE SET N_DISTINCT on the table then tx2 is allowed to do any of the following commands concurrently on the same table without being blocked. Some DMLs executed on the same rows may block, read more below.
Commands conflicting with ALTER TABLE SET N_DISTINCT on the table
e.g. If tx1 does a ALTER TABLE SET N_DISTINCT on the table then concurrently tx2 tries to do any of the following commands on the same table, tx2 will be blocked. Conversely, if tx1 executes any of the following commands and then tx2 concurrently tries to execute ALTER TABLE SET N_DISTINCT, tx2 will block.