现有连接被远程主机强制关闭

发布于 2024-10-14 04:39:28 字数 959 浏览 7 评论 0 原文

我们有一个 WPF 应用程序,它从 Analysis Services 多维数据集获取数据。客户端使用 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 时才会引发异常。

有什么想法吗?

We have a WPF application which gets data from an Analysis Services Cube. The client connects directly to the database using ADOMD.NET.

The WPF application works fine on existing Windows XP machines. Windows 7 however throws the following error:

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

I've narrowed the issue down further to be something around how the data is retrieved using ADOMD.NET. From what I understand, there 4 methods to retrieve data. It is only when I use a CellSet that this error occurs.

In fact, I can use the same MDX statement which causes the exception above to return data just fine using the XmlReader. It is only when I use the CellSet that the exception gets thrown.

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

伪装你 2024-10-21 04:39:28

事实证明,这是高级加密标准 (AES) 感知操作系统上的 Kerberos 中的一个错误。这意味着 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 终止 Windows Server 2008 上的“大型”MDX 查询 (此处

Turns out that this was a bug in Kerberos on Advanced Encryption Standard (AES) Aware Operating Systems. This means Windows Vista+ and Windows Server 2008+. Apparently it was fixed in Windows 7 and Windows Server 2008 R2.

In my scenario above I had Windows 7 clients connecting to Windows Server 2008 and so we needed to apply the fix to only the server. The fix is in KB969083.

If you are looking for more details, it took quite a bit of searching to find the issue. The KB doesn't mention my exact error above at all and apparently, that error is one of many ways in which the bug manifests itself.

So here's additional links for further reading if you wish:

  • Updated Errors may occur after configuring Analysis Services to use Kerberos authentication on Advanced Encryption Standard Aware Operating Systems (here)
  • Windows Server 2008 Kerberos Bug – Transport Connection Issues with SSAS data (here)
  • SSAS: Kerberos kills ‘large’ MDX queries on Windows Server 2008 (here)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文