Учитывая следующую модель данных:

Мы выполняем две отдельные транзакции с «изоляцией моментальных снимков».
Транзакция № 1: Вставка дочерних записей.
SET TRANSACTION ISOLATION LEVEL SNAPSHOT
BEGIN TRAN
WAITFOR DELAY '00:00:05'
INSERT INTO [Snapshotsch].[dbo].[Child] ([Id], [Name], [ParentId])
VALUES (NEWID(), 'AAAA', 'A130AC13-F2E4-4ABD-8D5B-8DD33E472C58')
WAITFOR DELAY '00:00:05'
INSERT INTO [Snapshotsch].[dbo].[Child] ([Id], [Name], [ParentId])
VALUES (NEWID(), 'BBBB', 'A130AC13-F2E4-4ABD-8D5B-8DD33E472C58')
WAITFOR DELAY '00:00:05'
COMMIT TRAN
Транзакция № 2: обновление записи «Родитель».
SET TRANSACTION ISOLATION LEVEL SNAPSHOT
BEGIN TRAN
WAITFOR DELAY '00:00:05'
UPDATE [Snapshotsch].[dbo].[Parent]
SET [Name] = 'AAAAA'
WHERE [Id] = 'A130AC13-F2E4-4ABD-8D5B-8DD33E472C58'
WAITFOR DELAY '00:00:05'
COMMIT TRAN
Когда я выполняю эти транзакции одновременно, происходит сбой с ошибкой:
Msg 3960, Level 16, State 2, Line 6
Snapshot isolation transaction aborted due to update conflict.
You cannot use snapshot isolation to access table 'dbo.Parent'
directly or indirectly in database 'Snapshotsch' to update,
delete, or insert the row that has been modified or deleted
by another transaction. Retry the transaction or change the
isolation level for the update/delete statement.
Что мы можем сделать, чтобы эти транзакции выполнялись одновременно? Для меня очевидно, что обнаружение конфликта изоляции моментального снимка вызывает эту ошибку, но, поскольку здесь нет реального конфликта, мне интересно, сможем ли мы исправить его с помощью какого-либо совета или настройки.