Novell Home

IDM JDBC Driver and Third-Party JDBC Driver Versioning

Novell Cool Solutions: Tip
By Geoffrey Carman

Digg This - Slashdot This

Posted: 15 Aug 2007
 

Problem

The JDBC driver for IDM is a very powerful and flexible tool. Due to its flexibility, it has added complexities beyond that of a normal driver.

One issue that comes up is that the IDM driver shim is very dependent on the actual JDBC driver for the database itself. The shim receives the XML documents from the engine, processes them, and sends them out as JDBC calls via the third party JDBC driver itself to process.

JDBC drivers are usually Java-based (thus the "J" in the name), and unlike .DLL or .NLM files, they do not have the usual embedded version information. Finding the version string can often be difficult.

In the case of the Oracle JDBC drivers, there are many versions, and they are named after the JVM/JDK used to compile them. Classes12.jar is for a 1.2 JVM, and ojdbc14.jar is for a 1.4 JVM and higher. (There is a version coming for a 1.5 and 1.6 JVM, but I am not sure if it is out yet).

Even so, when troubleshooting IDM JDBC issues, you want to be sure to try the latest version of the Oracle driver.

Solution

If you turn the driver shim trace to level 5 (it may show up lower trace levels, but definitely there in level 5), using either the remote loader console (if on Windows) or editing the configuration file itself, you should see a trace message that looks like the following:

This is for a ojdbc14.jar from 2004:

DirXML: [08/02/07 16:45:50.78]: TRACE:  BEGIN Open connection 'dedicated0'.
DirXML: [08/02/07 16:45:50.87]: TRACE:  END   Open connection.
DirXML: [08/02/07 16:45:50.87]: TRACE:  Connected to database.
DirXML: [08/02/07 16:45:50.87]: TRACE:  Retrieving database metadata
DirXML: [08/02/07 16:45:50.87]: TRACE:  BEGIN Get database properties.
DirXML: [08/02/07 16:45:50.87]: TRACE:   Database name:  Oracle
DirXML: [08/02/07 16:45:50.87]: TRACE:   Database version:  Oracle9i Enterprise Edition Release 9.2.0.6.0 
- Production With the Partitioning, OLAP and Oracle Data Mining options: JServer Release 9.2.0.6.0 - Production
DirXML: [08/02/07 16:45:50.87]: TRACE:    JDBC driver name:  Oracle JDBC driver
DirXML: [08/02/07 16:45:50.87]: TRACE:    JDBC driver version:  9.2.0.8.0
DirXML: [08/02/07 16:45:50.87]: TRACE:    JDBC driver major version:  9
DirXML: [08/02/07 16:45:50.87]: TRACE:    JDBC driver minor version:  2

This is for a ojdbc14.jar from 2007:

DirXML: [08/02/07 17:11:22.31]: TRACE:  Connecting to database...
DirXML: [08/02/07 17:11:22.31]: TRACE:  BEGIN Open connection 'dedicated0'.
DirXML: [08/02/07 17:11:22.67]: TRACE:  END   Open connection.
DirXML: [08/02/07 17:11:22.67]: TRACE:  Connected to database.
DirXML: [08/02/07 17:11:22.67]: TRACE:  Retrieving database metadata
DirXML: [08/02/07 17:11:22.69]: TRACE:  BEGIN Get database properties.
DirXML: [08/02/07 17:11:22.70]: TRACE:    Database name:  Oracle
DirXML: [08/02/07 17:11:22.70]: TRACE:    Database version:  Oracle9i Enterprise Edition Release 9.2.0.6.0 
- Production With the Partitioning, OLAP and Oracle Data Mining options: JServer Release 9.2.0.6.0 - Production
DirXML: [08/02/07 17:11:22.70]: TRACE:    JDBC driver name:  Oracle JDBC driver
DirXML: [08/02/07 17:11:22.70]: TRACE:    JDBC driver version:  10.2.0.3.0
DirXML: [08/02/07 17:11:22.70]: TRACE:    JDBC driver major version:  10
DirXML: [08/02/07 17:11:22.70]: TRACE:    JDBC driver minor version:  2

The driver shim sends its version string on most XML documents it sends back, as does the engine, which makes it easy to track from the IDM side.

Note also the database reports its version as well.


Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© 2014 Novell