Существующее соединение было принудительно закрыто удаленным хостом - PullRequest
0 голосов
/ 24 января 2011

У нас есть приложение WPF, которое получает данные из куба служб аналитики.Клиент подключается напрямую к базе данных с помощью ADOMD.NET.

Приложение WPF отлично работает на существующих компьютерах с Windows XP.Windows 7, однако, выдает следующую ошибку:

System.Reflection.TargetInvocationException: An exception occurred during the operation, making the result invalid.  Check InnerException for exception details. ---> Microsoft.AnalysisServices.AdomdClient.AdomdConnectionException: The connection either timed out or was lost. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host

Я еще более сузил проблему, чтобы показать, как данные извлекаются с помощью ADOMD.NET.Из того, что я понимаю, есть 4 метода для извлечения данных.Эта ошибка возникает только тогда, когда я использую CellSet.

Фактически я могу использовать ту же инструкцию MDX, которая приводит к тому, что приведенное выше исключение возвращает данные просто отлично, используя XmlReader.Только когда я использую CellSet, возникает исключение.

Есть идеи?

1 Ответ

0 голосов
/ 11 февраля 2011

Оказывается, что это ошибка в Kerberos в операционных системах с расширенным стандартом шифрования (AES).Это означает Windows Vista + и Windows Server 2008+.Очевидно, это было исправлено в Windows 7 и Windows Server 2008 R2.

В моем сценарии выше у меня были клиенты Windows 7, подключающиеся к Windows Server 2008, и поэтому нам нужно было применить исправление только к серверу.Исправление находится в KB969083 .

Если вы ищете более подробную информацию, поиск проблемы занял довольно много времени.В КБ вообще не упоминается моя точная ошибка, и, по-видимому, эта ошибка является одним из многих способов, с помощью которых ошибка проявляется.

Так что вот дополнительные ссылки для дальнейшего чтения, если хотите:

  • Обновленные ошибки могут возникать после настройки служб Analysis Services на использование проверки подлинности Kerberos в расширенных стандартных операционных системах шифрования ( здесь )
  • Ошибка Windows Server 2008 Kerberos - проблемы транспортного соединения с SSASданные (здесь)
  • SSAS: Kerberos убивает «большие» MDX-запросы в Windows Server 2008 ( здесь )
...