FIX: Using JDBC-ODBC Bridge Causes an Access Violation in Multithreaded Applications Under Stress

This article was previously published under Q257998
This article has been archived. It is offered "as is" and will no longer be updated.
In long-running, multithreaded applications using JDBC-ODBC bridge, you might experience Access Violations with call stacks as shown here. The key identification factors are a fault in ODBC32 with calls from the MSJDBC10 module on the call stack.
00  000000000482fdd4  000000001f70264f  ODBC32!EnterDbcCS+0x601  000000000482fdf4  000000001f702505  ODBC32!FreeStmt+0x10a02  000000000482fe0c  000000007c3e6522  ODBC32!SQLFreeStmt+0x2203  000000000482fef0  000000007c0019db  MSJDBC10!com_ms_jdbc_odbc_JdbcOdbc_freeStmt+0x7204  000000000482ff5c  000000007c006845  MSJAVA!CJavaEngine::VMInvoke+0x2e05  000000000482ff80  000000007c023c16  MSJAVA!CallFinalizer+0x3806  000000000482ff98  000000007c023bba  MSJAVA!CGCHeap::RunFinalizerLoop+0x5707  000000000482ffb8  0000000077f04ee8  msjava!0x000000007C023BBA08  000000000482ffc0  ffffffffc0000034  KERNEL32!BaseThreadStart+0x5109  0000000000000000  0000000000000000  0xFFFFFFFFC0000034				
09  000000000165efec  00000000062064a0  SQLSRV32!SAVETHREADID+0x200a  000000000165f064  000000001f4a738d  SQLSRV32!SQLGetData+0x300b  000000000165f090  000000007c3e6dc9  ODBC32!SQLGetData+0x2ed0c  000000000165f0ec  0000000001c71421  MSJDBC10!com_ms_jdbc_odbc_JdbcOdbc_getDataString+0xa90d  000000000165f124  000000000165f540  0x0000000001C71421				
The problem is due to improper synchronization and incorrect handling of SQL exceptions in the bridge code.
NOTE: If you are using Windows 2000, you must install Windows 2000 Service Pack (SP) 1 before you upgrade the Microsoft virtual machine (Microsoft VM).

To resolve this problem, install build 3802 or later of the Microsoft VM. For more information, visit the following Microsoft Web site:WARNING: After you install the updated Microsoft VM, you cannot uninstall it.
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

This problem was corrected in Microsoft VM build 3802.
For information about Windows 2000 SP1, see the following Microsoft Web site:For additional information about how to install Windows 2000 and Windows 2000 hotfixes at the same time, click the article number below to view the article in the Microsoft Knowledge Base:
249149 Installing Microsoft Windows 2000 and Windows 2000 Hotfixes
For the latest Microsoft Knowledge Base articles and other support information on Microsoft Visual J++ and the Microsoft SDK for Java, please see the following pages on the Microsoft Technical Support Web site:

Article ID: 257998 - Last Review: 10/26/2013 06:13:00 - Revision: 3.0

Microsoft Java Virtual Machine

  • kbnosurvey kbarchive kbbug kbfix kbjavavm31xxfix kbwin2000sp1fix KB257998