CLI0119E Unexpected system failure on Windows2003 and Window XP SP2 with COM+ application using DTC
When using COM+ application with DTC on Windows 2003 and Windows XP SP2, following error will be encountered on V8.1 and V8.2 (fp7 and fp8):
ERROR  [IBM][CLI Driver] CLI0119E Unexpected system failure.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.
Note: Several other error codes and symptoms can occur as a result searching for the XA APIs in the wrong dll.
This includes (among others):
SQL0998N with reason code 16 and subcode "2-80004005" SQLSTATE=58005
CLI0116E Invalid transaction state.
This is caused by change in behavior of Windows 2003 and Windows XP SP2.
Starting with Windows server 2003 and SP2 for Windows XP, Microsoft Distributed Transaction coordinator (DTC) requires third party to create registry values for all XA DLLs.
Unfortunately, with above mentioned db2levels, db2 does not explicitly register our dll at the install time (since this was not required on previous versions of Windows).
Unless db2cli.dll (For V8.1) or DB2APP.DLL (for V8.2) is registered, support for XA transactions is disabled until these required registry values are created.
Until automatic registration will occur upon install through future
fix pack, user needs to manually create these registry values.
For further information, please refer to Microsoft Knowledge Base Article - 817066.
There are 2 choices available.
1)Obtain UpdateXARegForDB2V82.exe utility which will update the registry automatically from following URL:
2)Edit Window 2003/XP SP2 registry manually.
WARNING: Use Registry Editor at your own risk. Incorrect use of Registry Editor may cause serious problems that may require reinstall of operating system.
IBM and Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly.
To create registry entry.
1) Click "START" from task bar.
2) Click "RUN.." then type "regedit" to execute Registry Editor.
3) From the Registry Editor, create a registry named-value under the following registry key:
In your registry named-value, specify name of the XA DLL which is DB2CLI.DLL (for V8.1) and DB2APP.DLL (for V8.2).
Type is String (REG_SZ), and the value is the full path name (including the file name) of the DLL file.