Правильно ли настроены ваши транзакции?Ваш SP должен выглядеть примерно так
BEGIN TRAN
DECLARE @id INT
INSERT INTO Master (x, y , z) ...
SELECT @id = @@identity
INSERT INTO Child (id, foo, bar) VALUES (@id, ...
COMMIT TRAN
RETURN 0
:Err
ROLLBACK
RETURN 1
Предполагая, что это правильно, вы должны проверить уровень изоляции вашего сервера по умолчанию и уровень изоляции соединений, выполняющих вашу хранимую процедуру, но это скорее ошибкав ИП