Ознаки
Якщо ваша програма Java використовує операції XA, а версія драйвера Microsoft JDBC для сервера SQL Server (sqljdbc_xa. dll), яка інсталюється в екземплярі SQL Server, – 4.2.6420.100 або 6.0.7507.10, кількість ручок подій продовжує зростати, доки не буде аварійно ЗАВЕРШИТИ процес SQL Server. Щоб отримати лічильник обробки подій для процесу SQL Server, запустіть Диспетчер завдань, а потім перейдіть на вкладку відомості . Якщо ресурси ядра SQL Server вичерпано, у журналі подій застосунку може бути записано такий запис:
Log Name: Application
Source: Microsoft-Windows-Complus
Date: date time
Event ID: 4689
Task Category: (8)
Level: Error
Keywords: Classic
User: N/A
Computer: computer_name
Description:
The run-time environment has detected an inconsistency in its internal state. This indicates a potential instability in the process that could be caused by the custom components running in the COM+ application, the components they make use of, or other factors. Error in COM\complus\src\inc\UTSem.H(100), Insufficient system resources exist to complete the requested service.
: CreateEvent returned a NULL handle
Причина
Ця проблема виникає, коли в класі створюється екземпляр "DTC ITransaction", але не звільняє екземпляр, коли його зупинено. Коли клас називається багато разів, проблема з витоком обробки виникає в екземплярі SQL Server.
Спосіб вирішення
Щоб вирішити цю проблему, замініть наявний драйвер sqljdbc_xa. dll.
Драйвер JDBC 4,2
Для цього завантажте та інсталюйте оновлений пакет Microsoft JDBC драйвер 4,2 для SQL Server (sqljdbc_xa. dll) із Центру завантажень Microsoft. Примітки
-
Оновлений номер версії пакета – 4.2.8112.100.
-
Доступні файли бібліотеки на боці клієнта (sqljdbc41. JAR або sqljdbc42. JAR) не потрібно замінювати таким чином, щоб можна було використовувати оновлений sqljdbc_xa. dll драйвер.
Драйвер JDBC 6,0
Для цього завантажте та інсталюйте оновлений пакет Microsoft JDBC драйвер 6,0 для SQL Server (sqljdbc_xa. dll) із Центру завантажень Microsoft.
Примітки
-
Оновлений номер версії пакета – 6.0.8112.100.
-
Доступні файли бібліотеки на боці клієнта (sqljdbc41. JAR або sqljdbc42. JAR) не потрібно замінювати таким чином, щоб можна було використовувати оновлений sqljdbc_xa. dll драйвер.
Додаткові відомості
Цю проблему запроваджено в JDBC для SQL Server версії 4.2.6420.100, а також існує у версії 6.0.7507.10. Ця проблема усунена в JDBC Driver для SQL Server версії 6.0.7728.100 і 6.0.8112.100. Ця функція Fix випускає екземпляр DTC ITransaction, коли екземпляр зупинено.
Стан
Корпорація Майкрософт підтвердила, що це проблема в продуктах Microsoft, перелічених у розділі "застосовується до".
Посилання
Відомості про термінологію , яку корпорація Майкрософт використовує для опису оновлень програмного забезпечення.
Застосовується до
Ця стаття стосується наведених нижче дій.
-
Microsoft JDBC Driver 4,2 і 6,0 для SQL Server, коли використовується з:
-
Microsoft SQL Server 2016
-
Microsoft SQL Server 2014
-
Microsoft SQL Server 2012
-
Microsoft SQL Server 2008 R2
-
Microsoft SQL Server 2008
-
Microsoft SQL Server 2005
-