Вот странная проблема, с которой я столкнулся на рабочем сервере. Это произошло дважды за последние две недели, и это сервер, который получает много трафика.
У нас есть код в веб-службе, который выполняет BEGIN TRAN
, а затем выполняет несколько SQL запросы (две вставки с последующим обновлением). Затем в конце выполняется COMMIT
. Дважды мы получали сообщение в журналах:
Запрос COMMIT TRANSACTION не имеет соответствующей BEGIN TRANSACTION.
Между первыми двумя вставками и обновлением мы вызываем другую веб-службу, поэтому между первыми двумя вставками и последним обновлением перед может быть небольшая задержка. ] Вызывается COMMIT
. Может ли это быть причиной нашей проблемы? Мы запускаем это на IIS 7 и Server 2008 R2 (все обновленные применены).
Первоначально мы думали, что это может быть переработка пулов приложений, но изменили это на переработку посреди ночи. Я не уверен, что могло заставить SQL-сервер забыть о вызове BEGIN TRAN
.
Эта веб-служба вызывается довольно часто. Кто-нибудь видел что-то подобное раньше? Сейчас я в полной растерянности ...
Любая помощь или предложение приветствуются!