Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 работа с AlwaysonAG из Entity Framework  [new]
Ilya Shipitsin
Member

Откуда:
Сообщений: 5
добрый день.

есть синхронная группа AAG из двух серверов ms sql 2014. при высокой нагрузке на базу (операции импорта), получается вот такой Exception:

Jul 19 2016 12:43:20 PM / 1468914200
System.Data.Entity.Infrastructure.CommitFailedException
An error was reported while committing a database transaction but it could not be determined whether the transaction succeeded or failed on the database server. See the inner exception and http://go.microsoft.com/fwlink/?LinkId=313468 for more information.
System.Data.Entity.Infrastructure.CommitFailedException: An error was reported while committing a database transaction but it could not be determined whether the transaction succeeded or failed on the database server. See the inner exception and http://go.microsoft.com/fwlink/?LinkId=313468 for more information. ---> System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. ---> System.ComponentModel.Win32Exception: The wait operation timed out
--- End of inner exception stack trace ---
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.TdsExecuteTransactionManagerRequest(Byte[] buffer, TransactionManagerRequestType request, String transactionName, TransactionManagerIsolationLevel isoLevel, Int32 timeout, SqlInternalTransaction transaction, TdsParserStateObject stateObj, Boolean isDelegateControlRequest)
at System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransactionYukon(TransactionRequest transactionRequest, String transactionName, IsolationLevel iso, SqlInternalTransaction internalTransaction, Boolean isDelegateControlRequest)
at System.Data.SqlClient.SqlInternalTransaction.Commit()
at System.Data.SqlClient.SqlTransaction.Commit()

....


хотелось бы работать в режиме транзакционной целостности, "could not be determined whether the transaction succeeded or failed" не очень устраивает.

есть идеи на этот счет ?
20 июл 16, 13:27    [19430907]     Ответить | Цитировать Сообщить модератору
 Re: работа с AlwaysonAG из Entity Framework  [new]
msLex
Member

Откуда:
Сообщений: 9271
Ключевое во всем этом

System.Data.SqlClient.SqlException: Timeout expired

у вас операция выполняется дольше чем установленный для нее command timeout
20 июл 16, 13:34    [19430938]     Ответить | Цитировать Сообщить модератору
 Re: работа с AlwaysonAG из Entity Framework  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4539
Ilya Shipitsin, по линку ходили?
20 июл 16, 13:34    [19430943]     Ответить | Цитировать Сообщить модератору
 Re: работа с AlwaysonAG из Entity Framework  [new]
Ilya Shipitsin
Member

Откуда:
Сообщений: 5
по линку ходил.
то, что таймаут, мне бы хотелось наверняка понимать, что транзакция зафейлилась
20 июл 16, 13:37    [19430965]     Ответить | Цитировать Сообщить модератору
 Re: работа с AlwaysonAG из Entity Framework  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Ilya Shipitsin
по линку ходил.
то, что таймаут, мне бы хотелось наверняка понимать, что транзакция зафейлилась
Увеличивайте таймаут, ускоряйте запросы.
20 июл 16, 13:41    [19430978]     Ответить | Цитировать Сообщить модератору
 Re: работа с AlwaysonAG из Entity Framework  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8805
На Entity Framework Вы не контролируете работу с сервером. Пишите на более низком уровне, если хотите счастья.
20 июл 16, 13:48    [19431029]     Ответить | Цитировать Сообщить модератору
 Re: работа с AlwaysonAG из Entity Framework  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4539
Ilya Shipitsin, по ссылке все варианты расписаны, в том числе - как убедиться... и смотрите не своих серверах почему ноды прыгают (понятно, что скорее всего, ваш импорт кладет на лопатки сервер)...
20 июл 16, 13:50    [19431040]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить