ИСПРАВЛЕНИЕ: Сообщение об ошибке при попытке открытия подключения из пула подключений в поток «System.Data».NET Framework 2.0: «время ожидания истекло. Время ожидания истекло до получения подключения из пула»

Переводы статьи Переводы статьи
Код статьи: 948868 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Проблема

Рассмотрим следующую ситуацию. В корпорации Майкрософт.NET Framework 2.0, System.Data поток пытается открыть подключения из пула подключений. В то же время другой поток пытается очистить пула с помощью ClearPool метод или ClearAllPools метод. В этом случае появляется следующее сообщение об ошибке:
Время ожидания истекло. Время ожидания истекло до получения подключения из пула. Это может быть вызвано потому, что все помещенные в пул соединения были заняты и был достигнут максимальный размер пула.
Эта проблема возникает в следующих версиях.NET Framework 2.0:
  • В версии.NET Framework 2.0
  • .NET Framework 2.0 с пакетом обновления 1

Причина

Данная проблема возникает из-за гонки в внутренний вызов GetConnection метод. После получения группа пула соединений и пул подключений GetConnection метод вызывается в пуле. Если ClearPool метод вызывается между GetConnectionPool метод и GetConnection метод, изменяется состояние пула ShuttingDownи GetConnection метод возвращает значение null. Эти вещи происходят из-за условия конкуренции. Затем так как значение null, интерпретируется как тайм-аут, появляется сообщение об ошибке, описанное в разделе «Проблема».

Решение

Сведения об исправлении

Чтобы устранить эту проблему, установите исправление, описанное в следующей статье Microsoft Knowledge Base:
948815 Доступность.NET Framework 2.0 исправлений, вышедших после пакета обновления 1 накопительный пакет исправлений для System.Data.dll и System.Data.OracleClient.dll

Необходимые условия

Необходимо иметь.NET Framework 2.0 с пакетом обновления 1 установить данное исправление.

Необходимость перезагрузки

После установки данного исправления перезагружать компьютер не нужно.

Сведения о замене исправлений

Это исправление не заменяет других исправлений.

Сведения о файлах

Английская версия исправления содержит атрибуты файла (или более поздними), приведенные в следующей таблице. Дата и время для файлов указаны в формате общего скоординированного времени (UTC). При просмотре сведений о файле, он преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, следует использовать Часовой пояс на вкладке Дата и время элемент панели управления.
.NET Framework 2.0 x 86 версии
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
System.Data.dll2.0.50727.18132,998,27204 Февраля 2008 г.20: 49X86
System.Data.OracleClient.dll2.0.50727.1813484,35204 Февраля 2008 г.20: 49X86
.NET Framework 2.0 и 64-разрядных версий
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
System.Data.dll2.0.50727.18132,998,27204 Февраля 2008 г.20: 49X86
System.Data.OracleClient.dll2.0.50727.1813484,35204 Февраля 2008 г.20: 49X86
System.Data.dll2.0.50727.18103,113,47214 Января 2008 г.15: 36X64
System.Data.OracleClient.dll2.0.50727.1810499,71214 Января 2008 г.15: 36X64
.NET Framework 2.0 на платформе Itanium
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
System.Data.dll2.0.50727.18132,998,27204 Февраля 2008 г.20: 49X86
System.Data.OracleClient.dll2.0.50727.1813484,35204 Февраля 2008 г.20: 49X86
System.Data.dll2.0.50727.18133,208,19204 Февраля 2008 г.17: 25IA-64
System.Data.OracleClient.dll2.0.50727.1813503,80804 Февраля 2008 г.17: 25IA-64

Статус

Корпорация Майкрософт подтверждает, что это проблема в продуктах Microsoft, перечисленных в разделе «Относится к».

Дополнительная информация

Для получения дополнительных сведений о терминологии, обновление программного обеспечения щелкните следующий номер статьи базы знаний Майкрософт:
824684Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт

Стек вызовов

System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
System.Data.SqlClient.SqlConnection.Open()
Примечание. Это ЭКСПРЕСС-ПУБЛИКАЦИЯ, подготовленная непосредственно службой технической поддержки Майкрософт . Сведения, содержащиеся в данном документе, предоставлены в качестве отклика на возникшие проблемы. Из-за срочности в материалах могут быть опечатки, и в любое время и без уведомления в них могут быть внесены изменения. Чтобы получить дополнительные сведения, см. Условия использования.

Свойства

Код статьи: 948868 - Последний отзыв: 19 июня 2011 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft .NET Framework 2.0
Ключевые слова: 
kbexpertiseadvanced kbqfe kbmt KB948868 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:948868

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com