Belirtiler
Java uygulamanız XA Işlemleri kullanıyorsa ve SQL Server örneğinde yüklü olan SQL Server (sqljdbc_xa. dll) dosyasının Microsoft JDBC sürücüsü sürümü 4.2.6420.100 veya 6.0.7507.10Ise, SQL Server işlemi kilitlenene kadar olay tanıtıcısı sayısı artacaktır. SQL Server işleminin olay tanıtıcısı sayısını bulmak için, Görev Yöneticisi 'ni başlatın ve Ayrıntılar sekmesini tıklatın. SQL Server çekirdek kaynakları bittiğinde, uygulama olay günlüğüne aşağıdaki girdiyi yazabilirsiniz:
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
Neden
Bu sorun, bir sınıf bir DTC ITransaction örneği oluşturduğunda, ancak durdurulduğunda örneği serbest bırakması durumunda gerçekleşir. Sınıf birçok kez çağrıldığında, SQL Server örneğinde tanıtıcı sızıntısı sorunu oluşur.
Çözüm
Bu sorunu çözmek için, varolan sqljdbc_xa. dll sürücüsünü değiştirin.
JDBC sürücüsü 4,2
Bunu yapmak için, Microsoft Indirme merkezi 'nden SQL Server (sqljdbc_xa. dll) paketinin güncelleştirilmiş MICROSOFT JDBC Driver 4,2 paketini indirin ve yükleyin. Notlar
-
Güncelleştirilmiş paket sürüm numarası 4.2.8112.100.
-
Var olan istemci tarafı kitaplık dosyalarının (sqljdbc41. jar veya sqljdbc42. jar) değiştirilmesi gerekmez, böylece güncelleştirilmiş sqljdbc_xa. dll sürücüsünü kullanabilirsiniz.
JDBC Sürücüsü 6,0
Bunu yapmak için, Microsoft Indirme merkezi 'nden SQL Server (sqljdbc_xa. dll) paketinin güncelleştirilmiş MICROSOFT JDBC Driver 6,0 paketini indirin ve yükleyin.
Notlar
-
Güncelleştirilmiş paket sürüm numarası 6.0.8112.100.
-
Var olan istemci tarafı kitaplık dosyalarının (sqljdbc41. jar veya sqljdbc42. jar) değiştirilmesi gerekmez, böylece güncelleştirilmiş sqljdbc_xa. dll sürücüsünü kullanabilirsiniz.
Ek Bilgi
Bu sorun, SQL Server sürüm 4.2.6420.100 için JDBC sürücüsünde ve sürüm 6.0.7507.10 'de bulunmaktadır. Bu sorun, SQL Server sürüm 6.0.7728.100 ve 6.0.8112.100Için JDBC Driver 'ta giderilmiştir. Bu düzeltme, örnek durdurulduğunda DTC ITransaction örneğini serbest bırakır.
Durum
Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.
Başvurular
Microsoft 'un yazılım güncelleştirmelerini açıklamak için kullandığı terminoloji hakkında bilgi edinin.
Uygulandığı öğe
Bu makale aşağıdakiler için geçerlidir:
-
SQL Server için Microsoft JDBC Driver 4,2 ve 6,0:
-
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
-