Update: Fehlermeldung, wenn ein Thread "System.Data" versucht, eine gepoolte Verbindung in.NET Framework 2.0 öffnen: "Timeout abgelaufen. Der Timeout ist vor dem Anfordern einer Verbindung aus dem Pool"

Problembeschreibung

Das folgende Szenario. In Microsoft.NET Framework 2.0 System.Data Thread eine gepoolte Verbindung öffnen möchte. Zur gleichen Zeit versucht ein anderer Thread Pool ClearPool -Methode oder die ClearAllPools -Methode löschen. In diesem Szenario wird die folgende Fehlermeldung angezeigt:
Timeout ist abgelaufen. Der Timeout ist vor dem Anfordern einer Verbindung aus dem Pool. Möglicherweise ist maximale Poolgröße erreicht wurde und alle Verbindungen im Pool verwendet wurden.
Dieses Problem tritt in den folgenden Versionen von.NET Framework 2.0:
  • Die Version von.NET Framework 2.0
  • .NET Framework 2.0 Servicepack 1

Ursache

Dieses Problem tritt aufgrund einer Racebedingung in den internen Aufruf der GetConnection -Methode. Nachdem die Verbindungsgruppe Pool und den Verbindungspool abgerufen werden, wird die GetConnection -Methode im Pool aufgerufen. ClearPool -Methode zwischen der GetConnectionPool und der GetConnection -Methode aufgerufen wird, der Poolstatus wird in ShuttingDowngeändert und GetConnection -Methode null zurück. Diese Dinge auftreten durch die Racebedingung. Da ein Timeout der null-Wert interpretiert wird, erhalten Sie dann die im Abschnitt "Symptome" erwähnte Fehlermeldung.

Problemlösung

Hotfix-Informationen

Um dieses Problem zu beheben, installieren Sie erwähnte wird im folgenden Artikel der Microsoft Knowledge Base:
948815 Verfügbarkeit.NET Framework 2.0 nach Service Pack 1 Hotfix Rollup Package System.Data.dll und System.Data.OracleClient.dll

Voraussetzungen

Sie müssen das.NET Framework 2.0 Service Pack 1 installiert, um diesen Hotfix anwenden.

Neustartanforderung

Sie müssen keinen Neustart des Computers nach der Installation dieses Hotfixes durchführen.

Informationen zu ersetzten Hotfixes

Dieser Hotfix ersetzt keine anderen Hotfixes.

Dateiinformationen

Die englische Version dieses Hotfixes weist Dateiattribute (oder spätere Attribute), die in der folgenden Tabelle aufgelistet sind. Die Datums- und Uhrzeitangaben für diese Dateien sind in Coordinated Universal Time (UTC) aufgelistet. Wenn Sie die Dateiinformationen anzeigen, werden sie in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu finden, verwenden Sie die Registerkarte Zeitzone unter Datum und Uhrzeit in der Systemsteuerung.
.NET Framework 2.0 X86 Versionen
DateinameDateiversionDateigrößeDatumZeitPlattform
System.data.dll2.0.50727.18132,998,27204-Feb-200820:49x86
System.data.oracleclient.dll2.0.50727.1813484,35204-Feb-200820:49x86
.NET Framework 2.0 X64 Versionen
DateinameDateiversionDateigrößeDatumZeitPlattform
System.data.dll2.0.50727.18132,998,27204-Feb-200820:49x86
System.data.oracleclient.dll2.0.50727.1813484,35204-Feb-200820:49x86
System.data.dll2.0.50727.18103,113,47214-Jan-200815:36x64
System.data.oracleclient.dll2.0.50727.1810499,71214-Jan-200815:36x64
.NET Framework 2.0, Itanium-Versionen
DateinameDateiversionDateigrößeDatumZeitPlattform
System.data.dll2.0.50727.18132,998,27204-Feb-200820:49x86
System.data.oracleclient.dll2.0.50727.1813484,35204-Feb-200820:49x86
System.data.dll2.0.50727.18133,208,19204-Feb-200817:25IA-64
System.data.oracleclient.dll2.0.50727.1813503,80804-Feb-200817:25IA-64

Status

Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind.

Weitere Informationen

Um weitere Informationen zur Terminologie für Softwareupdates zu erhalten, klicken Sie auf die folgende Artikelnummer, um den Artikel der Microsoft Knowledge Base anzuzeigen:

824684 Erläuterung von der standardmäßigen Standardbegriffen bei Microsoft Softwareupdates

Aufruflisteninformationen

System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
System.Data.SqlClient.SqlConnection.Open()
Eigenschaften

Artikelnummer: 948868 – Letzte Überarbeitung: 14.01.2017 – Revision: 2

Feedback