Bug #21453 pervasive sql migration
Submitted: 4 Aug 2006 18:47 Modified: 10 Aug 2006 13:13
Reporter: [ name withheld ] Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Migration Toolkit Severity:S1 (Critical)
Version:1.1 OS:Windows (windowsn 2000)
Assigned to: Michael G. Zinner CPU Architecture:Any

[4 Aug 2006 18:47] [ name withheld ]
Description:
1.0.25 Toolkit would communicate with my pervasive sql database but failed to display schemata (nothing in display) but reported it retrieved the schemata without error.

I upgraded to 1.1 toolkit and now with the same settings the toolkit will no longer even connect to pervasive:

Connecting to source database and retrieve schemata names.
The list of schema names could not be retrieved (error: 0).
ReverseEngineeringGeneric.getSchemata :com.pervasive.jdbc.v2.Driver
Details: 
java.net.URLClassLoader$1.run(Unknown Source)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(Unknown Source)
java.lang.ClassLoader.loadClass(Unknown Source)
sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
java.lang.ClassLoader.loadClass(Unknown Source)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Unknown Source)
com.mysql.grt.modules.ReverseEngineeringGeneric.establishConnection(ReverseEngineeringGeneric.java:53)
com.mysql.grt.modules.ReverseEngineeringGeneric.getSchemata(ReverseEngineeringGeneric.java:174)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
com.mysql.grt.Grt.callModuleFunction(Unknown Source)

How to repeat:
Simply attempt to connect to pervasive sql v8 database with toolkit 1.0.25 (you should get schemata report ok, then nothing displayed in object selection window).

After upgrading to 1.1 you should no longer be able to connect but instead receive the above error messages.
[7 Aug 2006 9:06] Michael G. Zinner
Hi,

please note that the Pervasive JDBC driver is no real Type 4 driver, as advertised on their homepage. You need native libraries to make it work.

From the MT 1.1.1 announce statement:

"please note that the Pervasive JDBC driver needs the following dlls accessable or in the installation directory, pscl2.dll, pscore2.dll, pvjdbc2.dll and the following files in .\java\lib, jpscs.jar, pvjdbc2.jar, pvjdbc2x.jar)"

Could you try to add those files and try again? Then the migration should work as expected with MT 1.1.1

Thanks!
[7 Aug 2006 15:06] [ name withheld ]
I did copy all the files that I have.  Those instructions though are for pervasive sql v9 and I am using v8.  With Migration Toolkit 1.0.25 version 8 worked fine with only the two .jar files mentioned above.  However after the upgrade to Migration Toolkit 1.1 I no longer connect with the same two .jar files.  I do not even have those .dll's because they are version 9 products.
[10 Aug 2006 13:13] Michael G. Zinner
Mark, 

I have now installed the Pervasive v8 trail and JDBC driver. In contrast to v9 it seems to be a real Type 4 driver. It needs the following files that I copied from C:\PVSW\Bin, jpscs.jar, pvjdbc2.jar and pvjdbc2x.jar.

Further, there are some issues with the Pervasive JDBC driver, not implementing all metadata functions and returning a fragmentary list of datatypes. 

Therefor I have modified the generic reverse engineering module to be more fault tolerant. Please copy the files found in this zip file over the original files.

ftp://ftp.mysql.com/pub/mysql/download/gui-tools/mysql-gui-tools-5.0-r1a-MT-patch1.zip

If your problem still persist, please reopen the bug. But it now works on my machine.

Mike