Content:
|
I have installed CodeGear RAD Studio 2007 (and the December update) on a number of different machines, including my workstation (running WinXP) and my laptop Windows 2003, and noticed a problem with BlackfishSQL on one system which didn't occur on the other (but which allowed me to drill-down to the problem and fix it).
The problem is described in detail in QC report #57941 by Chris McCann, and basically states that you can get an error when trying to connect to BlackfishSQL using dbExpress, telling you "Expected: 'true at position: 46" and then some more information.
I wondered why this problem would occur on one of my systems, but not on another. And the funny part was that from the non-working machine I could connect just fine to the BlackfishSQL database on the correct machine, so I quickly figured out it was a BlackfishSQL issue.
I then used Total Commander to investigate the Global Assembly cache on both machines, as well as the registry and searched for Blackfish. I quickly noticed that while the GAC contained one file for each BlackfishSQL assembly on both machines, the correct machine used a later version. The 8.0.2804.9245 file version of the Blackfish assemblies are still the latest versions on the systems that have this problem, while the Blackfish assemblies with file version 8.0.2902.10471 exist in systems without this problem. I'm talking about Borland.Data.BlackfishSQL.Design, Borland.Data.Blackfish.LocalClient, Borland.Data.BlackfishSQL.RemoteClient. The Version is still 8.0.0.0 but the FileVersion is different. The filesize is also different for the Borland.Data.BlackfishSQL.LocalClient.dll which is 1,339,392 bytes in the old version, but 1,343,488 bytes in the new version.
Both systems had the December Update installed, but only the system with the new versions is working right.
I then found the three new (2007/12/11) versions of the Borland.Data.BlackfishSQL assemblies on the system where it worked fine in the C:\Program Files\Common Files\CodeGear Shared\RAD Studio\Shared Assemblies\5.0 directory, and copied them to the system which still had the old versions, and ran the following script to register them using gacutil:
"c:\Program Files\Microsoft.NET\SDK\v2.0\Bin\gacutil" -i Borland.Data.BlackfishSQL.Design.dll "c:\Program Files\Microsoft.NET\SDK\v2.0\Bin\gacutil" -i Borland.Data.BlackfishSQL.LocalClient.dll "c:\Program Files\Microsoft.NET\SDK\v2.0\Bin\gacutil" -i Borland.Data.BlackfishSQL.RemoteClient.dll That registered the new versions of these assemblies in the GAC of the system which was previously broken. And guess what? Now everything seems to works fine again (after I had to stop and restart the BlackfishSQL service, of course).
If you do not have the luxury of two machines - one with the new/correct set of assemblies, then I must admit I have no idea how or where you can get them, but I've added my findings to the QC report so hopefully this issue will be addressed. It's likely the problem is caused by an installer issue, but I cannot say that for sure (although it's easy to blame the installer of course)...
Anyway, I hope this will be of help to some of you out there. It certainly helped me (after some hours of searching and tinkering).
|