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