After applying an EBF, you may discover that your JDBC applications stop working, and you receive a message similar to the following:
The sajdbc.jar build does not match the shared object build. |
This message can be returned because either Interactive SQL, Sybase Central, the fast launchers, or your own JDBC applications were running when the EBF was applied. In this case the Java VM locks any DLLs or shared objects that are loaded by it, but does not lock the JAR files. As a result, applying the EBF often updates the sajdbc, sajdbc4, jodbc, and/or jaodbc4 JAR files, but not the accompanying dbjdbc and/or dbjodbc DLL or shared object. When the JDBC application is restarted, the JDBC JAR file does not match the accompanying DLL or shared object, and the above message is returned.
First try shutting down all JDBC-based applications and then reapplying the EBF. If reapplying the EBF does not work, try resolving the problem through the following methods:
Check that the DLLs and shared objects were properly updated by the EBF installer
On Windows, check that the dbjdbc.dll and dbjodbc.dll files were properly updated when applying the EBF.
On Unix, check that the libdbjdbc.so.1 and libdbjodbc.so.1 shared objects were properly updated when applying the EBF.
When checking the DLLs and shared objects, you must check those that match the bitness of the JAVA VM, not the bitness of the SQL Anywhere server.
Check that there are not multiple copies of the DLLs and shared objects on your system If the DLLs and shared objects have been properly updated, make sure you do not have multiple copies of the DLLs or shared objects. This may occur if you have copied the DLLs or shared objects to the extensions folders of the Java VM to bypass the Java restriction that does not allow DLLs and shared objects to be loaded within multiple class loaders.
Check that the JAR files were properly updated If your DLLs and shared objects were properly updated, and there are not multiple copies on your system, then make sure that the various JAR files were properly updated. To check each JAR file, execute the following commands, and ensure that the SQL Anywhere version and build number reported by the JAR file matches the SQL Anywhere version and build number of the EBF you installed.
To check sadbc.jar, run the following command:
java -cp sajdbc.jar sybase.jdbc.sqlanywhere.IBuildNum |
To check sajdbc4.jar, run the following command:
java -cp sajdbc4.jar sybase.jdbc4.sqlanywhere.IBuildNum |
To check jodbc.jar, run the following command:
java -cp jodbc.jar ianywhere.ml.jdbcodbc.jdbc3.IBuildNum |
To check jodbc4.jar, run the following command:
java -cp jodbc4.jar ianywhere.ml.jdbcodbc.jdbc4.IBuildNum |
Once you determine which JAR file, DLL, or shared object does not match the EBF build number, make sure that the file is not locked by an application, and then reapply the EBF.
Discuss this page in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |